summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyles Borins <mylesborins@github.com>2021-08-23 11:43:02 -0400
committerMyles Borins <mylesborins@github.com>2021-08-23 11:44:48 -0400
commitcce95c4c5b34fa4e8253081c475ad968806e55d4 (patch)
treedbd2e72251c4f0e34cc6c2363bf4344b86efb357
parenta6d50a18a041b6fa78fcbaea5f77845d8bdfa03a (diff)
downloadnode-new-cce95c4c5b34fa4e8253081c475ad968806e55d4.tar.gz
deps: upgrade npm to 7.21.0
PR-URL: https://github.com/nodejs/node/pull/39813 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Rich Trott <rtrott@gmail.com>
-rw-r--r--deps/npm/README.md1
-rw-r--r--deps/npm/docs/content/commands/npm-access.md7
-rw-r--r--deps/npm/docs/content/commands/npm-adduser.md7
-rw-r--r--deps/npm/docs/content/commands/npm-audit.md25
-rw-r--r--deps/npm/docs/content/commands/npm-bin.md4
-rw-r--r--deps/npm/docs/content/commands/npm-bugs.md7
-rw-r--r--deps/npm/docs/content/commands/npm-cache.md4
-rw-r--r--deps/npm/docs/content/commands/npm-ci.md10
-rw-r--r--deps/npm/docs/content/commands/npm-config.md16
-rw-r--r--deps/npm/docs/content/commands/npm-dedupe.md37
-rw-r--r--deps/npm/docs/content/commands/npm-deprecate.md7
-rw-r--r--deps/npm/docs/content/commands/npm-diff.md37
-rw-r--r--deps/npm/docs/content/commands/npm-dist-tag.md7
-rw-r--r--deps/npm/docs/content/commands/npm-docs.md13
-rw-r--r--deps/npm/docs/content/commands/npm-doctor.md4
-rw-r--r--deps/npm/docs/content/commands/npm-edit.md4
-rw-r--r--deps/npm/docs/content/commands/npm-exec.md13
-rw-r--r--deps/npm/docs/content/commands/npm-explain.md7
-rw-r--r--deps/npm/docs/content/commands/npm-explore.md4
-rw-r--r--deps/npm/docs/content/commands/npm-find-dupes.md34
-rw-r--r--deps/npm/docs/content/commands/npm-fund.md16
-rw-r--r--deps/npm/docs/content/commands/npm-help-search.md4
-rw-r--r--deps/npm/docs/content/commands/npm-help.md4
-rw-r--r--deps/npm/docs/content/commands/npm-hook.md7
-rw-r--r--deps/npm/docs/content/commands/npm-init.md13
-rw-r--r--deps/npm/docs/content/commands/npm-install-ci-test.md10
-rw-r--r--deps/npm/docs/content/commands/npm-install-test.md46
-rw-r--r--deps/npm/docs/content/commands/npm-install.md46
-rw-r--r--deps/npm/docs/content/commands/npm-link.md46
-rw-r--r--deps/npm/docs/content/commands/npm-logout.md7
-rw-r--r--deps/npm/docs/content/commands/npm-ls.md37
-rw-r--r--deps/npm/docs/content/commands/npm-org.md13
-rw-r--r--deps/npm/docs/content/commands/npm-outdated.md19
-rw-r--r--deps/npm/docs/content/commands/npm-owner.md7
-rw-r--r--deps/npm/docs/content/commands/npm-pack.md16
-rw-r--r--deps/npm/docs/content/commands/npm-ping.md4
-rw-r--r--deps/npm/docs/content/commands/npm-pkg.md15
-rw-r--r--deps/npm/docs/content/commands/npm-prefix.md4
-rw-r--r--deps/npm/docs/content/commands/npm-profile.md13
-rw-r--r--deps/npm/docs/content/commands/npm-prune.md16
-rw-r--r--deps/npm/docs/content/commands/npm-publish.md25
-rw-r--r--deps/npm/docs/content/commands/npm-rebuild.md16
-rw-r--r--deps/npm/docs/content/commands/npm-repo.md10
-rw-r--r--deps/npm/docs/content/commands/npm-restart.md7
-rw-r--r--deps/npm/docs/content/commands/npm-root.md4
-rw-r--r--deps/npm/docs/content/commands/npm-run-script.md16
-rw-r--r--deps/npm/docs/content/commands/npm-search.md34
-rw-r--r--deps/npm/docs/content/commands/npm-set-script.md7
-rw-r--r--deps/npm/docs/content/commands/npm-star.md7
-rw-r--r--deps/npm/docs/content/commands/npm-stars.md4
-rw-r--r--deps/npm/docs/content/commands/npm-start.md7
-rw-r--r--deps/npm/docs/content/commands/npm-stop.md7
-rw-r--r--deps/npm/docs/content/commands/npm-team.md13
-rw-r--r--deps/npm/docs/content/commands/npm-test.md7
-rw-r--r--deps/npm/docs/content/commands/npm-token.md13
-rw-r--r--deps/npm/docs/content/commands/npm-uninstall.md10
-rw-r--r--deps/npm/docs/content/commands/npm-unpublish.md15
-rw-r--r--deps/npm/docs/content/commands/npm-unstar.md10
-rw-r--r--deps/npm/docs/content/commands/npm-update.md40
-rw-r--r--deps/npm/docs/content/commands/npm-version.md25
-rw-r--r--deps/npm/docs/content/commands/npm-view.md10
-rw-r--r--deps/npm/docs/content/commands/npm-whoami.md4
-rw-r--r--deps/npm/docs/content/commands/npm.md2
-rw-r--r--deps/npm/docs/content/configuring-npm/package-json.md4
-rw-r--r--deps/npm/docs/content/using-npm/config.md438
-rw-r--r--deps/npm/docs/content/using-npm/registry.md2
-rw-r--r--deps/npm/docs/output/commands/npm-access.html5
-rw-r--r--deps/npm/docs/output/commands/npm-adduser.html5
-rw-r--r--deps/npm/docs/output/commands/npm-audit.html17
-rw-r--r--deps/npm/docs/output/commands/npm-bin.html3
-rw-r--r--deps/npm/docs/output/commands/npm-bugs.html5
-rw-r--r--deps/npm/docs/output/commands/npm-cache.html3
-rw-r--r--deps/npm/docs/output/commands/npm-ci.html7
-rw-r--r--deps/npm/docs/output/commands/npm-config.html11
-rw-r--r--deps/npm/docs/output/commands/npm-dedupe.html25
-rw-r--r--deps/npm/docs/output/commands/npm-deprecate.html5
-rw-r--r--deps/npm/docs/output/commands/npm-diff.html25
-rw-r--r--deps/npm/docs/output/commands/npm-dist-tag.html5
-rw-r--r--deps/npm/docs/output/commands/npm-docs.html9
-rw-r--r--deps/npm/docs/output/commands/npm-doctor.html3
-rw-r--r--deps/npm/docs/output/commands/npm-edit.html3
-rw-r--r--deps/npm/docs/output/commands/npm-exec.html9
-rw-r--r--deps/npm/docs/output/commands/npm-explain.html5
-rw-r--r--deps/npm/docs/output/commands/npm-explore.html3
-rw-r--r--deps/npm/docs/output/commands/npm-find-dupes.html23
-rw-r--r--deps/npm/docs/output/commands/npm-fund.html11
-rw-r--r--deps/npm/docs/output/commands/npm-help-search.html3
-rw-r--r--deps/npm/docs/output/commands/npm-help.html3
-rw-r--r--deps/npm/docs/output/commands/npm-hook.html5
-rw-r--r--deps/npm/docs/output/commands/npm-init.html9
-rw-r--r--deps/npm/docs/output/commands/npm-install-ci-test.html7
-rw-r--r--deps/npm/docs/output/commands/npm-install-test.html31
-rw-r--r--deps/npm/docs/output/commands/npm-install.html31
-rw-r--r--deps/npm/docs/output/commands/npm-link.html31
-rw-r--r--deps/npm/docs/output/commands/npm-logout.html5
-rw-r--r--deps/npm/docs/output/commands/npm-ls.html27
-rw-r--r--deps/npm/docs/output/commands/npm-org.html9
-rw-r--r--deps/npm/docs/output/commands/npm-outdated.html13
-rw-r--r--deps/npm/docs/output/commands/npm-owner.html5
-rw-r--r--deps/npm/docs/output/commands/npm-pack.html11
-rw-r--r--deps/npm/docs/output/commands/npm-ping.html3
-rw-r--r--deps/npm/docs/output/commands/npm-pkg.html11
-rw-r--r--deps/npm/docs/output/commands/npm-prefix.html3
-rw-r--r--deps/npm/docs/output/commands/npm-profile.html9
-rw-r--r--deps/npm/docs/output/commands/npm-prune.html11
-rw-r--r--deps/npm/docs/output/commands/npm-publish.html18
-rw-r--r--deps/npm/docs/output/commands/npm-rebuild.html11
-rw-r--r--deps/npm/docs/output/commands/npm-repo.html7
-rw-r--r--deps/npm/docs/output/commands/npm-restart.html5
-rw-r--r--deps/npm/docs/output/commands/npm-root.html3
-rw-r--r--deps/npm/docs/output/commands/npm-run-script.html11
-rw-r--r--deps/npm/docs/output/commands/npm-search.html23
-rw-r--r--deps/npm/docs/output/commands/npm-set-script.html5
-rw-r--r--deps/npm/docs/output/commands/npm-star.html5
-rw-r--r--deps/npm/docs/output/commands/npm-stars.html3
-rw-r--r--deps/npm/docs/output/commands/npm-start.html5
-rw-r--r--deps/npm/docs/output/commands/npm-stop.html5
-rw-r--r--deps/npm/docs/output/commands/npm-team.html9
-rw-r--r--deps/npm/docs/output/commands/npm-test.html5
-rw-r--r--deps/npm/docs/output/commands/npm-token.html9
-rw-r--r--deps/npm/docs/output/commands/npm-uninstall.html7
-rw-r--r--deps/npm/docs/output/commands/npm-unpublish.html9
-rw-r--r--deps/npm/docs/output/commands/npm-unstar.html7
-rw-r--r--deps/npm/docs/output/commands/npm-update.html27
-rw-r--r--deps/npm/docs/output/commands/npm-version.html17
-rw-r--r--deps/npm/docs/output/commands/npm-view.html7
-rw-r--r--deps/npm/docs/output/commands/npm-whoami.html3
-rw-r--r--deps/npm/docs/output/commands/npm.html4
-rw-r--r--deps/npm/docs/output/configuring-npm/package-json.html4
-rw-r--r--deps/npm/docs/output/using-npm/config.html295
-rw-r--r--deps/npm/docs/output/using-npm/registry.html2
-rw-r--r--deps/npm/lib/cache.js128
-rw-r--r--deps/npm/lib/cli.js3
-rw-r--r--deps/npm/lib/exec.js4
-rw-r--r--deps/npm/lib/fund.js2
-rw-r--r--deps/npm/lib/ls.js2
-rw-r--r--deps/npm/lib/npm.js8
-rw-r--r--deps/npm/lib/run-script.js2
-rw-r--r--deps/npm/lib/set.js2
-rw-r--r--deps/npm/lib/test.js10
-rw-r--r--deps/npm/lib/utils/config/definitions.js9
-rw-r--r--deps/npm/lib/utils/config/describe-all.js5
-rw-r--r--deps/npm/lib/utils/did-you-mean.js8
-rw-r--r--deps/npm/lib/utils/error-message.js8
-rw-r--r--deps/npm/lib/utils/exit-handler.js19
-rw-r--r--deps/npm/lib/utils/format-bytes.js22
-rw-r--r--deps/npm/lib/utils/setup-log.js3
-rw-r--r--deps/npm/lib/utils/tar.js10
-rw-r--r--deps/npm/lib/view.js6
-rw-r--r--deps/npm/man/man1/npm-access.19
-rw-r--r--deps/npm/man/man1/npm-adduser.19
-rw-r--r--deps/npm/man/man1/npm-audit.127
-rw-r--r--deps/npm/man/man1/npm-bin.16
-rw-r--r--deps/npm/man/man1/npm-bugs.19
-rw-r--r--deps/npm/man/man1/npm-cache.16
-rw-r--r--deps/npm/man/man1/npm-ci.112
-rw-r--r--deps/npm/man/man1/npm-completion.12
-rw-r--r--deps/npm/man/man1/npm-config.118
-rw-r--r--deps/npm/man/man1/npm-dedupe.139
-rw-r--r--deps/npm/man/man1/npm-deprecate.19
-rw-r--r--deps/npm/man/man1/npm-diff.139
-rw-r--r--deps/npm/man/man1/npm-dist-tag.19
-rw-r--r--deps/npm/man/man1/npm-docs.115
-rw-r--r--deps/npm/man/man1/npm-doctor.16
-rw-r--r--deps/npm/man/man1/npm-edit.16
-rw-r--r--deps/npm/man/man1/npm-exec.115
-rw-r--r--deps/npm/man/man1/npm-explain.19
-rw-r--r--deps/npm/man/man1/npm-explore.16
-rw-r--r--deps/npm/man/man1/npm-find-dupes.136
-rw-r--r--deps/npm/man/man1/npm-fund.118
-rw-r--r--deps/npm/man/man1/npm-help-search.16
-rw-r--r--deps/npm/man/man1/npm-help.16
-rw-r--r--deps/npm/man/man1/npm-hook.19
-rw-r--r--deps/npm/man/man1/npm-init.115
-rw-r--r--deps/npm/man/man1/npm-install-ci-test.112
-rw-r--r--deps/npm/man/man1/npm-install-test.148
-rw-r--r--deps/npm/man/man1/npm-install.148
-rw-r--r--deps/npm/man/man1/npm-link.148
-rw-r--r--deps/npm/man/man1/npm-logout.19
-rw-r--r--deps/npm/man/man1/npm-ls.141
-rw-r--r--deps/npm/man/man1/npm-org.115
-rw-r--r--deps/npm/man/man1/npm-outdated.121
-rw-r--r--deps/npm/man/man1/npm-owner.19
-rw-r--r--deps/npm/man/man1/npm-pack.118
-rw-r--r--deps/npm/man/man1/npm-ping.16
-rw-r--r--deps/npm/man/man1/npm-pkg.117
-rw-r--r--deps/npm/man/man1/npm-prefix.16
-rw-r--r--deps/npm/man/man1/npm-profile.115
-rw-r--r--deps/npm/man/man1/npm-prune.118
-rw-r--r--deps/npm/man/man1/npm-publish.127
-rw-r--r--deps/npm/man/man1/npm-rebuild.118
-rw-r--r--deps/npm/man/man1/npm-repo.112
-rw-r--r--deps/npm/man/man1/npm-restart.19
-rw-r--r--deps/npm/man/man1/npm-root.16
-rw-r--r--deps/npm/man/man1/npm-run-script.118
-rw-r--r--deps/npm/man/man1/npm-search.136
-rw-r--r--deps/npm/man/man1/npm-set-script.19
-rw-r--r--deps/npm/man/man1/npm-shrinkwrap.12
-rw-r--r--deps/npm/man/man1/npm-star.19
-rw-r--r--deps/npm/man/man1/npm-stars.16
-rw-r--r--deps/npm/man/man1/npm-start.19
-rw-r--r--deps/npm/man/man1/npm-stop.19
-rw-r--r--deps/npm/man/man1/npm-team.115
-rw-r--r--deps/npm/man/man1/npm-test.19
-rw-r--r--deps/npm/man/man1/npm-token.115
-rw-r--r--deps/npm/man/man1/npm-uninstall.112
-rw-r--r--deps/npm/man/man1/npm-unpublish.117
-rw-r--r--deps/npm/man/man1/npm-unstar.112
-rw-r--r--deps/npm/man/man1/npm-update.142
-rw-r--r--deps/npm/man/man1/npm-version.127
-rw-r--r--deps/npm/man/man1/npm-view.112
-rw-r--r--deps/npm/man/man1/npm-whoami.16
-rw-r--r--deps/npm/man/man1/npm.16
-rw-r--r--deps/npm/man/man1/npx.12
-rw-r--r--deps/npm/man/man5/folders.52
-rw-r--r--deps/npm/man/man5/install.52
-rw-r--r--deps/npm/man/man5/npm-shrinkwrap-json.52
-rw-r--r--deps/npm/man/man5/npmrc.52
-rw-r--r--deps/npm/man/man5/package-json.58
-rw-r--r--deps/npm/man/man5/package-lock-json.52
-rw-r--r--deps/npm/man/man7/config.7440
-rw-r--r--deps/npm/man/man7/developers.72
-rw-r--r--deps/npm/man/man7/orgs.72
-rw-r--r--deps/npm/man/man7/registry.74
-rw-r--r--deps/npm/man/man7/removal.72
-rw-r--r--deps/npm/man/man7/scope.72
-rw-r--r--deps/npm/man/man7/scripts.72
-rw-r--r--deps/npm/man/man7/workspaces.72
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/bin/dedupe.js46
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js32
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js6
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js98
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/can-place-dep.js19
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/case-insensitive-map.js48
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/deepest-nesting-target.js2
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/edge.js4
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/node.js40
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/place-dep.js17
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/lib/shrinkwrap.js6
-rw-r--r--deps/npm/node_modules/@npmcli/arborist/package.json3
-rw-r--r--deps/npm/node_modules/@npmcli/map-workspaces/index.js7
-rw-r--r--deps/npm/node_modules/@npmcli/map-workspaces/package.json2
-rw-r--r--deps/npm/node_modules/@npmcli/run-script/package.json3
-rw-r--r--deps/npm/node_modules/byte-size/LICENSE21
-rw-r--r--deps/npm/node_modules/byte-size/dist/index.js123
-rw-r--r--deps/npm/node_modules/byte-size/index.mjs115
-rw-r--r--deps/npm/node_modules/byte-size/package.json55
-rw-r--r--deps/npm/node_modules/chalk/package.json2
-rw-r--r--deps/npm/node_modules/chalk/readme.md8
-rw-r--r--deps/npm/node_modules/color-support/LICENSE15
-rw-r--r--deps/npm/node_modules/color-support/README.md129
-rwxr-xr-xdeps/npm/node_modules/color-support/bin.js3
-rw-r--r--deps/npm/node_modules/color-support/browser.js14
-rw-r--r--deps/npm/node_modules/color-support/index.js134
-rw-r--r--deps/npm/node_modules/color-support/package.json36
-rw-r--r--deps/npm/node_modules/debug/package.json2
-rw-r--r--deps/npm/node_modules/debug/src/common.js15
-rw-r--r--deps/npm/node_modules/fastest-levenshtein/LICENSE.md (renamed from deps/npm/node_modules/resolve/LICENSE)4
-rw-r--r--deps/npm/node_modules/fastest-levenshtein/index.d.ts2
-rw-r--r--deps/npm/node_modules/fastest-levenshtein/index.js147
-rw-r--r--deps/npm/node_modules/fastest-levenshtein/package.json63
-rw-r--r--deps/npm/node_modules/fastest-levenshtein/test.js64
-rw-r--r--deps/npm/node_modules/gauge/has-color.js12
-rw-r--r--deps/npm/node_modules/gauge/index.js2
-rw-r--r--deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/readme.md39
-rw-r--r--deps/npm/node_modules/gauge/node_modules/string-width/readme.md42
-rw-r--r--deps/npm/node_modules/gauge/package.json31
-rw-r--r--deps/npm/node_modules/gauge/progress-bar.js2
-rw-r--r--deps/npm/node_modules/gauge/render-template.js5
-rw-r--r--deps/npm/node_modules/gauge/template-item.js1
-rw-r--r--deps/npm/node_modules/gauge/theme-set.js1
-rw-r--r--deps/npm/node_modules/gauge/themes.js28
-rw-r--r--deps/npm/node_modules/graceful-fs/graceful-fs.js154
-rw-r--r--deps/npm/node_modules/graceful-fs/package.json2
-rw-r--r--deps/npm/node_modules/init-package-json/package.json4
-rw-r--r--deps/npm/node_modules/is-core-module/core.json4
-rw-r--r--deps/npm/node_modules/is-core-module/index.js2
-rw-r--r--deps/npm/node_modules/is-core-module/package.json8
-rw-r--r--deps/npm/node_modules/is-core-module/test/index.js2
-rw-r--r--deps/npm/node_modules/leven/index.d.ts21
-rw-r--r--deps/npm/node_modules/leven/index.js77
-rw-r--r--deps/npm/node_modules/leven/license9
-rw-r--r--deps/npm/node_modules/leven/package.json57
-rw-r--r--deps/npm/node_modules/leven/readme.md50
-rw-r--r--deps/npm/node_modules/libnpmdiff/README.md2
-rw-r--r--deps/npm/node_modules/libnpmexec/lib/index.js2
-rw-r--r--deps/npm/node_modules/libnpmexec/package.json2
-rw-r--r--deps/npm/node_modules/make-fetch-happen/package.json6
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/aproba/LICENSE (renamed from deps/npm/node_modules/gauge/node_modules/aproba/LICENSE)1
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/aproba/index.js (renamed from deps/npm/node_modules/gauge/node_modules/aproba/index.js)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/aproba/package.json (renamed from deps/npm/node_modules/gauge/node_modules/aproba/package.json)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/LICENSE13
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/base-theme.js14
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/error.js24
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/has-color.js12
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/index.js233
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/package.json63
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/plumbing.js48
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/process.js3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/progress-bar.js35
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/render-template.js181
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/set-immediate.js7
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/set-interval.js3
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/spin.js5
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/template-item.js72
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/theme-set.js114
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/themes.js54
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/gauge/wide-truncate.js25
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/index.js (renamed from deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/index.js)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/license (renamed from deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/license)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/package.json (renamed from deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/package.json)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE15
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js309
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json28
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/string-width/index.js (renamed from deps/npm/node_modules/gauge/node_modules/string-width/index.js)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/string-width/license (renamed from deps/npm/node_modules/gauge/node_modules/string-width/license)0
-rw-r--r--deps/npm/node_modules/node-gyp/node_modules/string-width/package.json (renamed from deps/npm/node_modules/gauge/node_modules/string-width/package.json)0
-rw-r--r--deps/npm/node_modules/normalize-package-data/LICENSE23
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/extract_description.js16
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/fixer.js434
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/make_warning.js13
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/normalize.js41
-rw-r--r--deps/npm/node_modules/normalize-package-data/lib/safe_format.js8
-rw-r--r--deps/npm/node_modules/normalize-package-data/package.json14
-rw-r--r--deps/npm/node_modules/npmlog/log.js160
-rw-r--r--deps/npm/node_modules/npmlog/package.json21
-rw-r--r--deps/npm/node_modules/path-parse/LICENSE21
-rw-r--r--deps/npm/node_modules/path-parse/index.js75
-rw-r--r--deps/npm/node_modules/path-parse/package.json33
-rw-r--r--deps/npm/node_modules/read-package-json-fast/index.js43
-rw-r--r--deps/npm/node_modules/read-package-json-fast/package.json4
-rw-r--r--deps/npm/node_modules/read-package-json/package.json2
-rw-r--r--deps/npm/node_modules/read-package-json/read-json.js2
-rw-r--r--deps/npm/node_modules/resolve/SECURITY.md3
-rw-r--r--deps/npm/node_modules/resolve/appveyor.yml74
-rw-r--r--deps/npm/node_modules/resolve/example/async.js5
-rw-r--r--deps/npm/node_modules/resolve/example/sync.js3
-rw-r--r--deps/npm/node_modules/resolve/index.js6
-rw-r--r--deps/npm/node_modules/resolve/lib/async.js320
-rw-r--r--deps/npm/node_modules/resolve/lib/caller.js8
-rw-r--r--deps/npm/node_modules/resolve/lib/core.js53
-rw-r--r--deps/npm/node_modules/resolve/lib/core.json83
-rw-r--r--deps/npm/node_modules/resolve/lib/is-core.js5
-rw-r--r--deps/npm/node_modules/resolve/lib/node-modules-paths.js42
-rw-r--r--deps/npm/node_modules/resolve/lib/normalize-options.js10
-rw-r--r--deps/npm/node_modules/resolve/lib/sync.js199
-rw-r--r--deps/npm/node_modules/resolve/package.json51
-rw-r--r--deps/npm/node_modules/resolve/readme.markdown279
-rw-r--r--deps/npm/node_modules/resolve/test/core.js81
-rw-r--r--deps/npm/node_modules/resolve/test/dotdot.js29
-rw-r--r--deps/npm/node_modules/resolve/test/dotdot/abc/index.js2
-rw-r--r--deps/npm/node_modules/resolve/test/dotdot/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/faulty_basedir.js29
-rw-r--r--deps/npm/node_modules/resolve/test/filter.js34
-rw-r--r--deps/npm/node_modules/resolve/test/filter_sync.js33
-rw-r--r--deps/npm/node_modules/resolve/test/mock.js315
-rw-r--r--deps/npm/node_modules/resolve/test/mock_sync.js216
-rw-r--r--deps/npm/node_modules/resolve/test/module_dir.js56
-rw-r--r--deps/npm/node_modules/resolve/test/module_dir/xmodules/aaa/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/module_dir/ymodules/aaa/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/main.js1
-rw-r--r--deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/package.json3
-rw-r--r--deps/npm/node_modules/resolve/test/node-modules-paths.js143
-rw-r--r--deps/npm/node_modules/resolve/test/node_path.js70
-rw-r--r--deps/npm/node_modules/resolve/test/node_path/x/aaa/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/node_path/x/ccc/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/node_path/y/bbb/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/node_path/y/ccc/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/nonstring.js9
-rw-r--r--deps/npm/node_modules/resolve/test/pathfilter.js75
-rw-r--r--deps/npm/node_modules/resolve/test/pathfilter/deep_ref/main.js0
-rw-r--r--deps/npm/node_modules/resolve/test/precedence.js23
-rw-r--r--deps/npm/node_modules/resolve/test/precedence/aaa.js1
-rw-r--r--deps/npm/node_modules/resolve/test/precedence/aaa/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/precedence/aaa/main.js1
-rw-r--r--deps/npm/node_modules/resolve/test/precedence/bbb.js1
-rw-r--r--deps/npm/node_modules/resolve/test/precedence/bbb/main.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver.js450
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/baz/doom.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/baz/package.json4
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/baz/quux.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/browser_field/a.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/browser_field/b.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/browser_field/package.json5
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/cup.coffee1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/dot_main/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/dot_main/package.json3
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/dot_slash_main/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/dot_slash_main/package.json3
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/foo.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/incorrect_main/index.js2
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/incorrect_main/package.json3
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/invalid_main/package.json7
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/mug.coffee0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/mug.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/lerna.json6
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/package.json20
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js35
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json14
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json14
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js26
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json15
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js12
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/other_path/lib/other-lib.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/other_path/root.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/quux/foo/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/same_names/foo.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/same_names/foo/index.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js0
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/symlinked/package/bar.js1
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/symlinked/package/package.json3
-rw-r--r--deps/npm/node_modules/resolve/test/resolver/without_basedir/main.js5
-rw-r--r--deps/npm/node_modules/resolve/test/resolver_sync.js358
-rw-r--r--deps/npm/node_modules/resolve/test/shadowed_core.js54
-rw-r--r--deps/npm/node_modules/resolve/test/shadowed_core/node_modules/util/index.js0
-rw-r--r--deps/npm/node_modules/resolve/test/subdirs.js13
-rw-r--r--deps/npm/node_modules/resolve/test/symlinks.js176
-rw-r--r--deps/npm/node_modules/smart-buffer/build/smartbuffer.js2
-rw-r--r--deps/npm/node_modules/smart-buffer/build/smartbuffer.js.map2
-rw-r--r--deps/npm/node_modules/smart-buffer/package.json3
-rw-r--r--deps/npm/node_modules/socks-proxy-agent/dist/agent.js24
-rw-r--r--deps/npm/node_modules/socks-proxy-agent/dist/agent.js.map2
-rw-r--r--deps/npm/node_modules/socks-proxy-agent/dist/index.d.ts1
-rw-r--r--deps/npm/node_modules/socks-proxy-agent/dist/index.js.map2
-rw-r--r--deps/npm/node_modules/socks-proxy-agent/package.json42
-rw-r--r--deps/npm/node_modules/spdx-license-ids/index.json14
-rw-r--r--deps/npm/node_modules/spdx-license-ids/package.json2
-rw-r--r--deps/npm/node_modules/tar/lib/extract.js7
-rw-r--r--deps/npm/node_modules/tar/lib/list.js7
-rw-r--r--deps/npm/node_modules/tar/lib/mkdir.js97
-rw-r--r--deps/npm/node_modules/tar/lib/normalize-windows-path.js8
-rw-r--r--deps/npm/node_modules/tar/lib/pack.js24
-rw-r--r--deps/npm/node_modules/tar/lib/path-reservations.js32
-rw-r--r--deps/npm/node_modules/tar/lib/read-entry.js7
-rw-r--r--deps/npm/node_modules/tar/lib/replace.js3
-rw-r--r--deps/npm/node_modules/tar/lib/strip-absolute-path.js24
-rw-r--r--deps/npm/node_modules/tar/lib/strip-trailing-slashes.js24
-rw-r--r--deps/npm/node_modules/tar/lib/unpack.js385
-rw-r--r--deps/npm/node_modules/tar/lib/write-entry.js226
-rw-r--r--deps/npm/node_modules/tar/package.json8
-rw-r--r--deps/npm/package.json35
-rw-r--r--deps/npm/tap-snapshots/smoke-tests/index.js.test.cjs4
-rw-r--r--deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs3
-rw-r--r--deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs6
-rw-r--r--deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs432
-rw-r--r--deps/npm/tap-snapshots/test/lib/utils/error-message.js.test.cjs4
-rw-r--r--deps/npm/tap-snapshots/test/lib/utils/npm-usage.js.test.cjs3
-rw-r--r--deps/npm/tap-snapshots/test/lib/view.js.test.cjs26
-rw-r--r--deps/npm/test/fixtures/mock-npm.js9
-rw-r--r--deps/npm/test/lib/cache.js279
-rw-r--r--deps/npm/test/lib/cli.js26
-rw-r--r--deps/npm/test/lib/exec.js10
-rw-r--r--deps/npm/test/lib/find-dupes.js36
-rw-r--r--deps/npm/test/lib/get.js26
-rw-r--r--deps/npm/test/lib/load-all.js22
-rw-r--r--deps/npm/test/lib/prefix.js26
-rw-r--r--deps/npm/test/lib/prune.js20
-rw-r--r--deps/npm/test/lib/restart.js48
-rw-r--r--deps/npm/test/lib/root.js26
-rw-r--r--deps/npm/test/lib/set.js27
-rw-r--r--deps/npm/test/lib/start.js48
-rw-r--r--deps/npm/test/lib/stop.js48
-rw-r--r--deps/npm/test/lib/test.js60
-rw-r--r--deps/npm/test/lib/utils/completion/installed-deep.js4
-rw-r--r--deps/npm/test/lib/utils/error-message.js11
-rw-r--r--deps/npm/test/lib/utils/exit-handler.js11
-rw-r--r--deps/npm/test/lib/utils/setup-log.js24
-rw-r--r--deps/npm/test/lib/utils/tar.js4
-rw-r--r--deps/npm/test/lib/whoami.js50
470 files changed, 8339 insertions, 5448 deletions
diff --git a/deps/npm/README.md b/deps/npm/README.md
index 01de9e8f69..822cdecc29 100644
--- a/deps/npm/README.md
+++ b/deps/npm/README.md
@@ -29,6 +29,7 @@ If you're looking to manage multiple versions of **`node`** &/or **`npm`**, cons
* [**`volta`**](https://github.com/volta-cli/volta)
* [**`nodenv`**](https://github.com/nodenv/nodenv)
* [**`asdf-nodejs`**](https://github.com/asdf-vm/asdf-nodejs)
+* [**`nvm-windows`**](https://github.com/coreybutler/nvm-windows)
### Usage
diff --git a/deps/npm/docs/content/commands/npm-access.md b/deps/npm/docs/content/commands/npm-access.md
index 6d73d6a5e2..1f661c911f 100644
--- a/deps/npm/docs/content/commands/npm-access.md
+++ b/deps/npm/docs/content/commands/npm-access.md
@@ -85,6 +85,7 @@ Management of teams and team memberships is done with the `npm team` command.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -92,6 +93,9 @@ Management of teams and team memberships is done with the `npm team` command.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -103,6 +107,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-adduser.md b/deps/npm/docs/content/commands/npm-adduser.md
index f25d3ccd87..21a31ca940 100644
--- a/deps/npm/docs/content/commands/npm-adduser.md
+++ b/deps/npm/docs/content/commands/npm-adduser.md
@@ -37,6 +37,7 @@ your existing record.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -44,6 +45,9 @@ your existing record.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `scope`
* Default: the scope of the current project, if any, or ""
@@ -74,6 +78,9 @@ npm init --scope=@foo --yes
```
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-audit.md b/deps/npm/docs/content/commands/npm-audit.md
index 94b16b27bd..9fa8c0fcc6 100644
--- a/deps/npm/docs/content/commands/npm-audit.md
+++ b/deps/npm/docs/content/commands/npm-audit.md
@@ -191,6 +191,7 @@ $ npm audit --audit-level=moderate
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `audit-level`
* Default: null
@@ -199,6 +200,9 @@ $ npm audit --audit-level=moderate
The minimum level of vulnerability for `npm audit` to exit with a non-zero
exit code.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -212,6 +216,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `force`
* Default: false
@@ -237,6 +244,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -249,6 +259,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock-only`
* Default: false
@@ -263,6 +276,9 @@ instead of checking `node_modules` and downloading dependencies.
For `list` this means the output will be based on the tree described by the
`package-lock.json`, rather than the contents of `node_modules`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -281,6 +297,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -303,6 +322,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -313,6 +335,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-bin.md b/deps/npm/docs/content/commands/npm-bin.md
index 12984da1d1..2d7c1d5b81 100644
--- a/deps/npm/docs/content/commands/npm-bin.md
+++ b/deps/npm/docs/content/commands/npm-bin.md
@@ -20,6 +20,7 @@ Print the folder where npm will install executables.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global`
* Default: false
@@ -34,6 +35,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-bugs.md b/deps/npm/docs/content/commands/npm-bugs.md
index b8778324b8..f92241a14b 100644
--- a/deps/npm/docs/content/commands/npm-bugs.md
+++ b/deps/npm/docs/content/commands/npm-bugs.md
@@ -23,6 +23,7 @@ will search for a `package.json` in the current folder and use the `name` proper
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `browser`
* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
@@ -35,6 +36,9 @@ terminal.
Set to `true` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -42,6 +46,9 @@ Set to `true` to use default system URL opener.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-cache.md b/deps/npm/docs/content/commands/npm-cache.md
index e371f196d7..6497a3988c 100644
--- a/deps/npm/docs/content/commands/npm-cache.md
+++ b/deps/npm/docs/content/commands/npm-cache.md
@@ -77,6 +77,7 @@ verify`.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `cache`
* Default: Windows: `%LocalAppData%\npm-cache`, Posix: `~/.npm`
@@ -85,6 +86,9 @@ verify`.
The location of npm's cache directory. See [`npm
cache`](/commands/npm-cache)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-ci.md b/deps/npm/docs/content/commands/npm-ci.md
index 31c92b13c5..1ce50c66d5 100644
--- a/deps/npm/docs/content/commands/npm-ci.md
+++ b/deps/npm/docs/content/commands/npm-ci.md
@@ -69,6 +69,7 @@ cache:
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `audit`
* Default: true
@@ -79,6 +80,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -91,6 +95,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -99,6 +106,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-config.md b/deps/npm/docs/content/commands/npm-config.md
index 9e76a23671..2d77f045cb 100644
--- a/deps/npm/docs/content/commands/npm-config.md
+++ b/deps/npm/docs/content/commands/npm-config.md
@@ -97,6 +97,7 @@ global config.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `json`
* Default: false
@@ -109,6 +110,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -123,6 +127,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `editor`
* Default: The EDITOR or VISUAL environment variables, or 'notepad.exe' on
@@ -131,6 +138,9 @@ folder instead of the current working directory. See
The command to run for `npm edit` and `npm config edit`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `location`
* Default: "user" unless `--global` is passed, which will also set this value
@@ -139,6 +149,9 @@ The command to run for `npm edit` and `npm config edit`.
When passed to `npm config` this refers to which config file to use.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `long`
* Default: false
@@ -146,6 +159,9 @@ When passed to `npm config` this refers to which config file to use.
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-dedupe.md b/deps/npm/docs/content/commands/npm-dedupe.md
index 324e6a71b7..dcb2a98fe9 100644
--- a/deps/npm/docs/content/commands/npm-dedupe.md
+++ b/deps/npm/docs/content/commands/npm-dedupe.md
@@ -76,6 +76,7 @@ Using `npm find-dupes` will run the command in `--dry-run` mode.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global-style`
* Default: false
@@ -88,6 +89,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -98,6 +102,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -117,6 +124,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -129,6 +139,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -147,6 +160,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -159,6 +175,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -169,6 +188,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -181,6 +203,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -190,6 +215,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -203,6 +231,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -225,6 +256,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -235,6 +269,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-deprecate.md b/deps/npm/docs/content/commands/npm-deprecate.md
index b5c0e67144..4888e42e8b 100644
--- a/deps/npm/docs/content/commands/npm-deprecate.md
+++ b/deps/npm/docs/content/commands/npm-deprecate.md
@@ -44,6 +44,7 @@ format an empty string.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -51,6 +52,9 @@ format an empty string.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -62,6 +66,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-diff.md b/deps/npm/docs/content/commands/npm-diff.md
index 479cb63b11..cf0bbec15f 100644
--- a/deps/npm/docs/content/commands/npm-diff.md
+++ b/deps/npm/docs/content/commands/npm-diff.md
@@ -155,6 +155,7 @@ located within the folder `./lib/` and changed lines of code within the
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `diff`
* Default:
@@ -162,6 +163,9 @@ located within the folder `./lib/` and changed lines of code within the
Define arguments to compare in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-name-only`
* Default: false
@@ -169,6 +173,9 @@ Define arguments to compare in `npm diff`.
Prints only filenames when using `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-unified`
* Default: 3
@@ -176,6 +183,9 @@ Prints only filenames when using `npm diff`.
The number of lines of context to print in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-ignore-all-space`
* Default: false
@@ -183,6 +193,9 @@ The number of lines of context to print in `npm diff`.
Ignore whitespace when comparing lines in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-no-prefix`
* Default: false
@@ -193,6 +206,9 @@ Do not show any source or destination prefix in `npm diff` output.
Note: this causes `npm diff` to ignore the `--diff-src-prefix` and
`--diff-dst-prefix` configs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-src-prefix`
* Default: "a/"
@@ -200,6 +216,9 @@ Note: this causes `npm diff` to ignore the `--diff-src-prefix` and
Source prefix to be used in `npm diff` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-dst-prefix`
* Default: "b/"
@@ -207,6 +226,9 @@ Source prefix to be used in `npm diff` output.
Destination prefix to be used in `npm diff` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-text`
* Default: false
@@ -214,6 +236,9 @@ Destination prefix to be used in `npm diff` output.
Treat all files as text in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -228,6 +253,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `tag`
* Default: "latest"
@@ -242,6 +270,9 @@ command, if no explicit tag is given.
When used by the `npm diff` command, this is the tag used to fetch the
tarball that will be compared with the local files by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -264,6 +295,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -274,6 +308,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
## See Also
diff --git a/deps/npm/docs/content/commands/npm-dist-tag.md b/deps/npm/docs/content/commands/npm-dist-tag.md
index 0e4e0ce56c..4ad68ff56d 100644
--- a/deps/npm/docs/content/commands/npm-dist-tag.md
+++ b/deps/npm/docs/content/commands/npm-dist-tag.md
@@ -92,6 +92,7 @@ not begin with a number or the letter `v`.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `workspace`
* Default:
@@ -114,6 +115,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -124,6 +128,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-docs.md b/deps/npm/docs/content/commands/npm-docs.md
index 7f4c860837..9f1387daef 100644
--- a/deps/npm/docs/content/commands/npm-docs.md
+++ b/deps/npm/docs/content/commands/npm-docs.md
@@ -24,6 +24,7 @@ the `name` property.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `browser`
* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
@@ -36,6 +37,9 @@ terminal.
Set to `true` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -43,6 +47,9 @@ Set to `true` to use default system URL opener.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -65,6 +72,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -75,6 +85,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-doctor.md b/deps/npm/docs/content/commands/npm-doctor.md
index 839f4261bb..0cce60c7b7 100644
--- a/deps/npm/docs/content/commands/npm-doctor.md
+++ b/deps/npm/docs/content/commands/npm-doctor.md
@@ -106,6 +106,7 @@ reset the cache.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -113,6 +114,9 @@ reset the cache.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-edit.md b/deps/npm/docs/content/commands/npm-edit.md
index 6930844bca..5ae7f2481a 100644
--- a/deps/npm/docs/content/commands/npm-edit.md
+++ b/deps/npm/docs/content/commands/npm-edit.md
@@ -29,6 +29,7 @@ changes to your locally installed copy.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `editor`
* Default: The EDITOR or VISUAL environment variables, or 'notepad.exe' on
@@ -37,6 +38,9 @@ changes to your locally installed copy.
The command to run for `npm edit` and `npm config edit`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-exec.md b/deps/npm/docs/content/commands/npm-exec.md
index d4ea94371a..82908d65e0 100644
--- a/deps/npm/docs/content/commands/npm-exec.md
+++ b/deps/npm/docs/content/commands/npm-exec.md
@@ -124,6 +124,7 @@ $ npm exec -- foo@latest bar --package=@npmcli/foo
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `package`
* Default:
@@ -131,6 +132,9 @@ $ npm exec -- foo@latest bar --package=@npmcli/foo
The package to install for [`npm exec`](/commands/npm-exec)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `call`
* Default: ""
@@ -144,6 +148,9 @@ npm exec --package yo --package generator-node --call "yo node"
```
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -166,6 +173,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -176,6 +186,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### Examples
diff --git a/deps/npm/docs/content/commands/npm-explain.md b/deps/npm/docs/content/commands/npm-explain.md
index 3a87ee8e43..4a8af2f700 100644
--- a/deps/npm/docs/content/commands/npm-explain.md
+++ b/deps/npm/docs/content/commands/npm-explain.md
@@ -56,6 +56,7 @@ node_modules/nyc/node_modules/find-up
### Configuration
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `json`
* Default: false
@@ -68,6 +69,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -90,6 +94,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-explore.md b/deps/npm/docs/content/commands/npm-explore.md
index c4a40cf722..3979da9573 100644
--- a/deps/npm/docs/content/commands/npm-explore.md
+++ b/deps/npm/docs/content/commands/npm-explore.md
@@ -33,6 +33,7 @@ sure to use `npm rebuild <pkg>` if you make any changes.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `shell`
* Default: SHELL environment variable, or "bash" on Posix, or "cmd.exe" on
@@ -41,6 +42,9 @@ sure to use `npm rebuild <pkg>` if you make any changes.
The shell to run for the `npm explore` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-find-dupes.md b/deps/npm/docs/content/commands/npm-find-dupes.md
index 3b28f6443d..e9dbac6d18 100644
--- a/deps/npm/docs/content/commands/npm-find-dupes.md
+++ b/deps/npm/docs/content/commands/npm-find-dupes.md
@@ -19,6 +19,7 @@ duplications, without actually changing the package tree.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global-style`
* Default: false
@@ -31,6 +32,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -41,6 +45,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -60,6 +67,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -72,6 +82,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -90,6 +103,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -102,6 +118,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -112,6 +131,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -124,6 +146,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -133,6 +158,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -155,6 +183,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -165,6 +196,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-fund.md b/deps/npm/docs/content/commands/npm-fund.md
index ec5f5a37fd..83c0b13d8c 100644
--- a/deps/npm/docs/content/commands/npm-fund.md
+++ b/deps/npm/docs/content/commands/npm-fund.md
@@ -66,6 +66,7 @@ test-workspaces-fund@1.0.0
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `json`
* Default: false
@@ -78,6 +79,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `browser`
* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
@@ -90,6 +94,9 @@ terminal.
Set to `true` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `unicode`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -99,6 +106,9 @@ Set to `true` to use default system URL opener.
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -121,6 +131,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `which`
* Default: null
@@ -128,6 +141,9 @@ This value is not exported to the environment for child processes.
If there are multiple funding sources, which 1-indexed source URL to open.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
## See Also
diff --git a/deps/npm/docs/content/commands/npm-help-search.md b/deps/npm/docs/content/commands/npm-help-search.md
index 70f4f182d1..78553a14ec 100644
--- a/deps/npm/docs/content/commands/npm-help-search.md
+++ b/deps/npm/docs/content/commands/npm-help-search.md
@@ -27,6 +27,7 @@ directly.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `long`
* Default: false
@@ -34,6 +35,9 @@ directly.
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-help.md b/deps/npm/docs/content/commands/npm-help.md
index 81f55db332..a8002eef17 100644
--- a/deps/npm/docs/content/commands/npm-help.md
+++ b/deps/npm/docs/content/commands/npm-help.md
@@ -25,6 +25,7 @@ topic, so unique matches are equivalent to specifying a topic name.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `viewer`
* Default: "man" on Posix, "browser" on Windows
@@ -34,6 +35,9 @@ The program to use to view help content.
Set to `"browser"` to view html help content in the default web browser.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-hook.md b/deps/npm/docs/content/commands/npm-hook.md
index 2917375ea3..c91bce3075 100644
--- a/deps/npm/docs/content/commands/npm-hook.md
+++ b/deps/npm/docs/content/commands/npm-hook.md
@@ -87,6 +87,7 @@ $ npm hook rm id-deadbeef
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -94,6 +95,9 @@ $ npm hook rm id-deadbeef
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -105,6 +109,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-init.md b/deps/npm/docs/content/commands/npm-init.md
index 54c3bdb4b7..7355c75884 100644
--- a/deps/npm/docs/content/commands/npm-init.md
+++ b/deps/npm/docs/content/commands/npm-init.md
@@ -147,6 +147,7 @@ dot to represent the current directory in that context, e.g: `react-app .`:
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `yes`
* Default: null
@@ -155,6 +156,9 @@ dot to represent the current directory in that context, e.g: `react-app .`:
Automatically answer "yes" to any prompts that npm might print on the
command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `force`
* Default: false
@@ -180,6 +184,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -202,6 +209,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -212,6 +222,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-install-ci-test.md b/deps/npm/docs/content/commands/npm-install-ci-test.md
index 2640311cf9..5c37ed8f56 100644
--- a/deps/npm/docs/content/commands/npm-install-ci-test.md
+++ b/deps/npm/docs/content/commands/npm-install-ci-test.md
@@ -20,6 +20,7 @@ This command runs `npm ci` followed immediately by `npm test`.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `audit`
* Default: true
@@ -30,6 +31,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -42,6 +46,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -50,6 +57,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-install-test.md b/deps/npm/docs/content/commands/npm-install-test.md
index c8533cafed..c2f9ab3d2f 100644
--- a/deps/npm/docs/content/commands/npm-install-test.md
+++ b/deps/npm/docs/content/commands/npm-install-test.md
@@ -29,6 +29,7 @@ takes exactly the same arguments as `npm install`.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `save`
* Default: true
@@ -39,6 +40,9 @@ Save installed packages to a package.json file as dependencies.
When used with the `npm rm` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-exact`
* Default: false
@@ -47,6 +51,9 @@ package.json.
Dependencies saved to package.json will be configured with an exact version
rather than using npm's default semver range operator.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -61,6 +68,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global-style`
* Default: false
@@ -73,6 +83,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -83,6 +96,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -102,6 +118,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -114,6 +133,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -132,6 +154,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -144,6 +169,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -154,6 +182,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -166,6 +197,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -175,6 +209,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -188,6 +225,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -210,6 +250,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -220,6 +263,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-install.md b/deps/npm/docs/content/commands/npm-install.md
index 70d4c0d46f..de73787181 100644
--- a/deps/npm/docs/content/commands/npm-install.md
+++ b/deps/npm/docs/content/commands/npm-install.md
@@ -413,6 +413,7 @@ These are some of the most common options related to installation.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `save`
* Default: true
@@ -423,6 +424,9 @@ Save installed packages to a package.json file as dependencies.
When used with the `npm rm` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-exact`
* Default: false
@@ -431,6 +435,9 @@ package.json.
Dependencies saved to package.json will be configured with an exact version
rather than using npm's default semver range operator.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -445,6 +452,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global-style`
* Default: false
@@ -457,6 +467,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -467,6 +480,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -486,6 +502,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -498,6 +517,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -516,6 +538,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -528,6 +553,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -538,6 +566,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -550,6 +581,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -559,6 +593,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -572,6 +609,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -594,6 +634,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -604,6 +647,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### Algorithm
diff --git a/deps/npm/docs/content/commands/npm-link.md b/deps/npm/docs/content/commands/npm-link.md
index c7b3850095..5811a8b23b 100644
--- a/deps/npm/docs/content/commands/npm-link.md
+++ b/deps/npm/docs/content/commands/npm-link.md
@@ -113,6 +113,7 @@ workspace(s).
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `save`
* Default: true
@@ -123,6 +124,9 @@ Save installed packages to a package.json file as dependencies.
When used with the `npm rm` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-exact`
* Default: false
@@ -131,6 +135,9 @@ package.json.
Dependencies saved to package.json will be configured with an exact version
rather than using npm's default semver range operator.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -145,6 +152,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global-style`
* Default: false
@@ -157,6 +167,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -167,6 +180,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -186,6 +202,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -198,6 +217,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -216,6 +238,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -228,6 +253,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -238,6 +266,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -250,6 +281,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -259,6 +293,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -272,6 +309,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -294,6 +334,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -304,6 +347,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-logout.md b/deps/npm/docs/content/commands/npm-logout.md
index 000b1006e8..cb7c8496fb 100644
--- a/deps/npm/docs/content/commands/npm-logout.md
+++ b/deps/npm/docs/content/commands/npm-logout.md
@@ -29,6 +29,7 @@ connected to that scope, if set.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -36,6 +37,9 @@ connected to that scope, if set.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `scope`
* Default: the scope of the current project, if any, or ""
@@ -66,6 +70,9 @@ npm init --scope=@foo --yes
```
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-ls.md b/deps/npm/docs/content/commands/npm-ls.md
index 350f40a999..528140bee9 100644
--- a/deps/npm/docs/content/commands/npm-ls.md
+++ b/deps/npm/docs/content/commands/npm-ls.md
@@ -75,6 +75,7 @@ least the default human-readable `npm ls` output in npm v8.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `all`
* Default: false
@@ -84,6 +85,9 @@ When running `npm outdated` and `npm ls`, setting `--all` will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -96,6 +100,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `long`
* Default: false
@@ -103,6 +110,9 @@ Not supported by all npm commands.
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -111,6 +121,9 @@ Show extended information in `ls`, `search`, and `help-search`.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -125,6 +138,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `depth`
* Default: `Infinity` if `--all` is set, otherwise `1`
@@ -135,6 +151,9 @@ The depth to go when recursing packages for `npm ls`.
If not set, `npm ls` will show only the immediate dependencies of the root
project. If `--all` is set, then npm will show all dependencies by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -153,6 +172,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `link`
* Default: false
@@ -160,6 +182,9 @@ variable will be set to `'production'` for all lifecycle scripts.
Used with `npm ls`, limiting output to only those packages that are linked.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock-only`
* Default: false
@@ -174,6 +199,9 @@ instead of checking `node_modules` and downloading dependencies.
For `list` this means the output will be based on the tree described by the
`package-lock.json`, rather than the contents of `node_modules`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `unicode`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -183,6 +211,9 @@ For `list` this means the output will be based on the tree described by the
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -205,6 +236,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -215,6 +249,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-org.md b/deps/npm/docs/content/commands/npm-org.md
index 269f5cc3ee..2f08f61152 100644
--- a/deps/npm/docs/content/commands/npm-org.md
+++ b/deps/npm/docs/content/commands/npm-org.md
@@ -62,6 +62,7 @@ listing them, and finding specific ones and their roles.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -69,6 +70,9 @@ listing them, and finding specific ones and their roles.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -80,6 +84,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -92,6 +99,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -100,6 +110,9 @@ Not supported by all npm commands.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-outdated.md b/deps/npm/docs/content/commands/npm-outdated.md
index 40e5feafd4..8eb5528c3d 100644
--- a/deps/npm/docs/content/commands/npm-outdated.md
+++ b/deps/npm/docs/content/commands/npm-outdated.md
@@ -88,6 +88,7 @@ A few things to note:
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `all`
* Default: false
@@ -97,6 +98,9 @@ When running `npm outdated` and `npm ls`, setting `--all` will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -109,6 +113,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `long`
* Default: false
@@ -116,6 +123,9 @@ Not supported by all npm commands.
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -124,6 +134,9 @@ Show extended information in `ls`, `search`, and `help-search`.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -138,6 +151,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -160,6 +176,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-owner.md b/deps/npm/docs/content/commands/npm-owner.md
index da22e899c2..74e7f84af6 100644
--- a/deps/npm/docs/content/commands/npm-owner.md
+++ b/deps/npm/docs/content/commands/npm-owner.md
@@ -39,6 +39,7 @@ on the command line when changing ownership with `--otp`.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -46,6 +47,9 @@ on the command line when changing ownership with `--otp`.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -57,6 +61,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-pack.md b/deps/npm/docs/content/commands/npm-pack.md
index cd4a175919..dda30512db 100644
--- a/deps/npm/docs/content/commands/npm-pack.md
+++ b/deps/npm/docs/content/commands/npm-pack.md
@@ -14,6 +14,7 @@ npm pack [[<@scope>/]<pkg>...] [--dry-run] [--json]
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `dry-run`
* Default: false
@@ -27,6 +28,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -39,6 +43,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `pack-destination`
* Default: "."
@@ -46,6 +53,9 @@ Not supported by all npm commands.
Directory in which `npm pack` will save tarballs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -68,6 +78,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -78,6 +91,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### Description
diff --git a/deps/npm/docs/content/commands/npm-ping.md b/deps/npm/docs/content/commands/npm-ping.md
index 7c7b66b181..6f1c4582f0 100644
--- a/deps/npm/docs/content/commands/npm-ping.md
+++ b/deps/npm/docs/content/commands/npm-ping.md
@@ -29,6 +29,7 @@ Ping error: {*Detail about error}
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -36,6 +37,9 @@ Ping error: {*Detail about error}
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-pkg.md b/deps/npm/docs/content/commands/npm-pkg.md
index 78b13cf9e9..bf6a2df5da 100644
--- a/deps/npm/docs/content/commands/npm-pkg.md
+++ b/deps/npm/docs/content/commands/npm-pkg.md
@@ -16,7 +16,7 @@ npm pkg delete <field> [.<subfield> ...]
A command that automates the management of `package.json` files.
`npm pkg` provide 3 different sub commands that allow you to modify or retrieve
-values for given object keys in your `packge.json`.
+values for given object keys in your `package.json`.
The syntax to retrieve and set fields is a dot separated representation of
the nested object properties to be found within your `package.json`, it's the
@@ -166,6 +166,7 @@ npm pkg get name version --ws
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `force`
* Default: false
@@ -191,6 +192,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -203,6 +207,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -225,6 +232,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -235,6 +245,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
## See Also
diff --git a/deps/npm/docs/content/commands/npm-prefix.md b/deps/npm/docs/content/commands/npm-prefix.md
index 0523c9e195..276a9e9e69 100644
--- a/deps/npm/docs/content/commands/npm-prefix.md
+++ b/deps/npm/docs/content/commands/npm-prefix.md
@@ -37,6 +37,7 @@ npm prefix -g
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global`
* Default: false
@@ -51,6 +52,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-profile.md b/deps/npm/docs/content/commands/npm-profile.md
index 079440d785..cecc48518d 100644
--- a/deps/npm/docs/content/commands/npm-profile.md
+++ b/deps/npm/docs/content/commands/npm-profile.md
@@ -77,6 +77,7 @@ Some of these commands may not be available on non npmjs.com registries.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -84,6 +85,9 @@ Some of these commands may not be available on non npmjs.com registries.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -96,6 +100,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -104,6 +111,9 @@ Not supported by all npm commands.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -115,6 +125,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-prune.md b/deps/npm/docs/content/commands/npm-prune.md
index d9b5b068f7..7bd7ad1311 100644
--- a/deps/npm/docs/content/commands/npm-prune.md
+++ b/deps/npm/docs/content/commands/npm-prune.md
@@ -37,6 +37,7 @@ this command can help clean up any resulting garbage.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -55,6 +56,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -68,6 +72,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -80,6 +87,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -102,6 +112,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -112,6 +125,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-publish.md b/deps/npm/docs/content/commands/npm-publish.md
index 0d25d7d29d..946109de40 100644
--- a/deps/npm/docs/content/commands/npm-publish.md
+++ b/deps/npm/docs/content/commands/npm-publish.md
@@ -108,6 +108,7 @@ built.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `tag`
* Default: "latest"
@@ -122,6 +123,9 @@ command, if no explicit tag is given.
When used by the `npm diff` command, this is the tag used to fetch the
tarball that will be compared with the local files by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `access`
* Default: 'restricted' for scoped packages, 'public' for unscoped packages
@@ -132,6 +136,15 @@ If you want your scoped package to be publicly viewable (and installable)
set `--access=public`. The only valid values for `access` are `public` and
`restricted`. Unscoped packages _always_ have an access level of `public`.
+Note: Using the `--access` flag on the `npm publish` command will only set
+the package access level on the initial publish of the package. Any
+subsequent `npm publish` commands using the `--access` flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use `npm access`.
+
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -145,6 +158,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -156,6 +172,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -178,6 +197,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -188,6 +210,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-rebuild.md b/deps/npm/docs/content/commands/npm-rebuild.md
index 49c822d730..19684796f8 100644
--- a/deps/npm/docs/content/commands/npm-rebuild.md
+++ b/deps/npm/docs/content/commands/npm-rebuild.md
@@ -28,6 +28,7 @@ will be rebuilt.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global`
* Default: false
@@ -42,6 +43,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -54,6 +58,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -66,6 +73,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -88,6 +98,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -98,6 +111,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-repo.md b/deps/npm/docs/content/commands/npm-repo.md
index ade08e7d93..c3c509e0b4 100644
--- a/deps/npm/docs/content/commands/npm-repo.md
+++ b/deps/npm/docs/content/commands/npm-repo.md
@@ -21,6 +21,7 @@ in the current folder and use the `repository` property.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `browser`
* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
@@ -33,6 +34,9 @@ terminal.
Set to `true` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -55,6 +59,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -65,6 +72,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-restart.md b/deps/npm/docs/content/commands/npm-restart.md
index 4b905c2670..80f8ab77ef 100644
--- a/deps/npm/docs/content/commands/npm-restart.md
+++ b/deps/npm/docs/content/commands/npm-restart.md
@@ -38,6 +38,7 @@ If it does _not_ have a `"restart"` script specified, but it does have
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `ignore-scripts`
* Default: false
@@ -50,6 +51,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -58,6 +62,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-root.md b/deps/npm/docs/content/commands/npm-root.md
index 2d072c16de..98d1108d33 100644
--- a/deps/npm/docs/content/commands/npm-root.md
+++ b/deps/npm/docs/content/commands/npm-root.md
@@ -27,6 +27,7 @@ echo "Global packages installed in: ${global_node_modules}"
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global`
* Default: false
@@ -41,6 +42,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-run-script.md b/deps/npm/docs/content/commands/npm-run-script.md
index 5e3828c407..e436bc27f9 100644
--- a/deps/npm/docs/content/commands/npm-run-script.md
+++ b/deps/npm/docs/content/commands/npm-run-script.md
@@ -138,6 +138,7 @@ packages.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `workspace`
* Default:
@@ -160,6 +161,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -170,6 +174,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `if-present`
* Default: false
@@ -182,6 +189,9 @@ it's present and fail if the script fails. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -194,6 +204,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -202,6 +215,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-search.md b/deps/npm/docs/content/commands/npm-search.md
index e30287635b..252822e719 100644
--- a/deps/npm/docs/content/commands/npm-search.md
+++ b/deps/npm/docs/content/commands/npm-search.md
@@ -41,6 +41,7 @@ expression characters in most shells.)
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `long`
* Default: false
@@ -48,6 +49,9 @@ expression characters in most shells.)
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -60,6 +64,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `color`
* Default: true unless the NO_COLOR environ is set to something other than '0'
@@ -68,6 +75,9 @@ Not supported by all npm commands.
If false, never shows colors. If `"always"` then always shows colors. If
true, then only prints color codes for tty file descriptors.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -76,6 +86,9 @@ true, then only prints color codes for tty file descriptors.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `description`
* Default: true
@@ -83,6 +96,9 @@ Output parseable results from commands that write to standard output. For
Show the description in `npm search`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchopts`
* Default: ""
@@ -90,6 +106,9 @@ Show the description in `npm search`
Space-separated options that are always passed to search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchexclude`
* Default: ""
@@ -97,6 +116,9 @@ Space-separated options that are always passed to search.
Space-separated options that limit the results from search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -104,6 +126,9 @@ Space-separated options that limit the results from search.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `prefer-online`
* Default: false
@@ -112,6 +137,9 @@ The base URL of the npm registry.
If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `prefer-offline`
* Default: false
@@ -121,6 +149,9 @@ If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use
`--offline`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `offline`
* Default: false
@@ -129,6 +160,9 @@ will be requested from the server. To force full offline mode, use
Force offline mode: no network requests will be done during install. To
allow the CLI to fill in missing cache data, see `--prefer-offline`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-set-script.md b/deps/npm/docs/content/commands/npm-set-script.md
index c5d5df5320..e39b7a18c0 100644
--- a/deps/npm/docs/content/commands/npm-set-script.md
+++ b/deps/npm/docs/content/commands/npm-set-script.md
@@ -30,6 +30,7 @@ npm set-script [<script>] [<command>]
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `workspace`
* Default:
@@ -52,6 +53,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -62,6 +66,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-star.md b/deps/npm/docs/content/commands/npm-star.md
index 5af08e2da6..21109c3509 100644
--- a/deps/npm/docs/content/commands/npm-star.md
+++ b/deps/npm/docs/content/commands/npm-star.md
@@ -37,6 +37,7 @@ You can see all your starred packages using [`npm stars`](/commands/npm-stars)
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -44,6 +45,9 @@ You can see all your starred packages using [`npm stars`](/commands/npm-stars)
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `unicode`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -53,6 +57,9 @@ The base URL of the npm registry.
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-stars.md b/deps/npm/docs/content/commands/npm-stars.md
index edea74a0c2..101559ad99 100644
--- a/deps/npm/docs/content/commands/npm-stars.md
+++ b/deps/npm/docs/content/commands/npm-stars.md
@@ -23,6 +23,7 @@ you will most certainly enjoy this command.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -30,6 +31,9 @@ you will most certainly enjoy this command.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-start.md b/deps/npm/docs/content/commands/npm-start.md
index 1c532de44b..50a54cb5e5 100644
--- a/deps/npm/docs/content/commands/npm-start.md
+++ b/deps/npm/docs/content/commands/npm-start.md
@@ -49,6 +49,7 @@ npm start
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `ignore-scripts`
* Default: false
@@ -61,6 +62,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -69,6 +73,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-stop.md b/deps/npm/docs/content/commands/npm-stop.md
index 859de54c39..d4de4caf3a 100644
--- a/deps/npm/docs/content/commands/npm-stop.md
+++ b/deps/npm/docs/content/commands/npm-stop.md
@@ -42,6 +42,7 @@ npm stop
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `ignore-scripts`
* Default: false
@@ -54,6 +55,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -62,6 +66,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-team.md b/deps/npm/docs/content/commands/npm-team.md
index c7d5defcc6..6050af1dff 100644
--- a/deps/npm/docs/content/commands/npm-team.md
+++ b/deps/npm/docs/content/commands/npm-team.md
@@ -105,6 +105,7 @@ use the `npm access` command to grant or revoke the appropriate permissions.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -112,6 +113,9 @@ use the `npm access` command to grant or revoke the appropriate permissions.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -123,6 +127,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -131,6 +138,9 @@ password, npm will prompt on the command line for one.
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -143,6 +153,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-test.md b/deps/npm/docs/content/commands/npm-test.md
index 73cdf6de85..2059f93dec 100644
--- a/deps/npm/docs/content/commands/npm-test.md
+++ b/deps/npm/docs/content/commands/npm-test.md
@@ -39,6 +39,7 @@ npm test
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `ignore-scripts`
* Default: false
@@ -51,6 +52,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -59,6 +63,9 @@ will *not* run any pre- or post-scripts.
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-token.md b/deps/npm/docs/content/commands/npm-token.md
index c586a69152..16da1f7319 100644
--- a/deps/npm/docs/content/commands/npm-token.md
+++ b/deps/npm/docs/content/commands/npm-token.md
@@ -78,6 +78,7 @@ This lets you list, create and revoke authentication tokens.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `read-only`
* Default: false
@@ -86,6 +87,9 @@ This lets you list, create and revoke authentication tokens.
This is used to mark a token as unable to publish when configuring limited
access tokens with the `npm token create` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cidr`
* Default: null
@@ -94,6 +98,9 @@ access tokens with the `npm token create` command.
This is a list of CIDR address to be used when configuring limited access
tokens with the `npm token create` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -101,6 +108,9 @@ tokens with the `npm token create` command.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -112,6 +122,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-uninstall.md b/deps/npm/docs/content/commands/npm-uninstall.md
index b6ba313938..c04e1a7fd4 100644
--- a/deps/npm/docs/content/commands/npm-uninstall.md
+++ b/deps/npm/docs/content/commands/npm-uninstall.md
@@ -58,6 +58,7 @@ npm uninstall lodash --no-save
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `save`
* Default: true
@@ -68,6 +69,9 @@ Save installed packages to a package.json file as dependencies.
When used with the `npm rm` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -90,6 +94,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -100,6 +107,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-unpublish.md b/deps/npm/docs/content/commands/npm-unpublish.md
index 82779ab659..1678bb305d 100644
--- a/deps/npm/docs/content/commands/npm-unpublish.md
+++ b/deps/npm/docs/content/commands/npm-unpublish.md
@@ -7,7 +7,7 @@ description: Remove a package from the registry
### Synopsis
To learn more about how the npm registry treats unpublish, see our <a
-href="https://www.npmjs.com/policies/unpublish" target="_blank"
+href="https://docs.npmjs.com/policies/unpublish" target="_blank"
rel="noopener noreferrer"> unpublish policies</a>
#### Unpublishing a single version of a package
@@ -49,6 +49,7 @@ passed.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `dry-run`
* Default: false
@@ -62,6 +63,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `force`
* Default: false
@@ -87,6 +91,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -109,6 +116,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -119,6 +129,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-unstar.md b/deps/npm/docs/content/commands/npm-unstar.md
index f1a1f7a2e3..d6e3620772 100644
--- a/deps/npm/docs/content/commands/npm-unstar.md
+++ b/deps/npm/docs/content/commands/npm-unstar.md
@@ -33,6 +33,7 @@ You can see all your starred packages using [`npm stars`](/commands/npm-stars)
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -40,6 +41,9 @@ You can see all your starred packages using [`npm stars`](/commands/npm-stars)
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `unicode`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -49,6 +53,9 @@ The base URL of the npm registry.
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -60,6 +67,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-update.md b/deps/npm/docs/content/commands/npm-update.md
index c4f7694e19..57b9b91f97 100644
--- a/deps/npm/docs/content/commands/npm-update.md
+++ b/deps/npm/docs/content/commands/npm-update.md
@@ -153,6 +153,7 @@ be _downgraded_.
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `global`
* Default: false
@@ -167,6 +168,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global-style`
* Default: false
@@ -179,6 +183,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -189,6 +196,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -208,6 +218,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -220,6 +233,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -238,6 +254,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -250,6 +269,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -260,6 +282,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -272,6 +297,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -281,6 +309,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -294,6 +325,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -316,6 +350,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -326,6 +363,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm-version.md b/deps/npm/docs/content/commands/npm-version.md
index a3e34153a0..a02bf5bb99 100644
--- a/deps/npm/docs/content/commands/npm-version.md
+++ b/deps/npm/docs/content/commands/npm-version.md
@@ -18,6 +18,7 @@ npm version [<newversion> | major | minor | patch | premajor | preminor | prepat
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `allow-same-version`
* Default: false
@@ -26,6 +27,9 @@ npm version [<newversion> | major | minor | patch | premajor | preminor | prepat
Prevents throwing an error when `npm version` is used to set the new version
to the same value as the current version.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `commit-hooks`
* Default: true
@@ -33,6 +37,9 @@ to the same value as the current version.
Run git commit hooks when using the `npm version` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `git-tag-version`
* Default: true
@@ -40,6 +47,9 @@ Run git commit hooks when using the `npm version` command.
Tag the commit when using the `npm version` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -52,6 +62,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `preid`
* Default: ""
@@ -60,6 +73,9 @@ Not supported by all npm commands.
The "prerelease identifier" to use as a prefix for the "prerelease" part of
a semver. Like the `rc` in `1.2.0-rc.8`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `sign-git-tag`
* Default: false
@@ -71,6 +87,9 @@ If set to true, then the `npm version` command will tag the version using
Note that git requires you to have set up GPG keys in your git configs for
this to work properly.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -93,6 +112,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -103,6 +125,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### Description
diff --git a/deps/npm/docs/content/commands/npm-view.md b/deps/npm/docs/content/commands/npm-view.md
index b3d5df86e3..af354deb88 100644
--- a/deps/npm/docs/content/commands/npm-view.md
+++ b/deps/npm/docs/content/commands/npm-view.md
@@ -98,6 +98,7 @@ npm view connect versions
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `json`
* Default: false
@@ -110,6 +111,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -132,6 +136,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -142,6 +149,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### Output
diff --git a/deps/npm/docs/content/commands/npm-whoami.md b/deps/npm/docs/content/commands/npm-whoami.md
index 09253b3b63..2cd7ffde3f 100644
--- a/deps/npm/docs/content/commands/npm-whoami.md
+++ b/deps/npm/docs/content/commands/npm-whoami.md
@@ -27,6 +27,7 @@ If logged into a registry that uses Basic Auth, then simply print the
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -34,6 +35,9 @@ If logged into a registry that uses Basic Auth, then simply print the
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See Also
diff --git a/deps/npm/docs/content/commands/npm.md b/deps/npm/docs/content/commands/npm.md
index 7ff1cc4907..de51087064 100644
--- a/deps/npm/docs/content/commands/npm.md
+++ b/deps/npm/docs/content/commands/npm.md
@@ -31,7 +31,7 @@ Run `npm help` to get a list of available commands.
npm comes preconfigured to use npm's public registry at
https://registry.npmjs.org by default. Use of the npm public registry is
subject to terms of use available at
-https://www.npmjs.com/policies/terms.
+https://docs.npmjs.com/policies/terms.
You can configure npm to use any compatible registry you like, and even
run your own registry. Use of someone else's registry is governed by
diff --git a/deps/npm/docs/content/configuring-npm/package-json.md b/deps/npm/docs/content/configuring-npm/package-json.md
index 0fc5dc5075..856adb3366 100644
--- a/deps/npm/docs/content/configuring-npm/package-json.md
+++ b/deps/npm/docs/content/configuring-npm/package-json.md
@@ -286,12 +286,10 @@ Certain files are always included, regardless of settings:
* `package.json`
* `README`
-* `CHANGES` / `CHANGELOG` / `HISTORY`
* `LICENSE` / `LICENCE`
-* `NOTICE`
* The file in the "main" field
-`README`, `CHANGES`, `LICENSE` & `NOTICE` can have any case and extension.
+`README` & `LICENSE` can have any case and extension.
Conversely, some files are always ignored:
diff --git a/deps/npm/docs/content/using-npm/config.md b/deps/npm/docs/content/using-npm/config.md
index c4d1afed35..10e8ca9b9d 100644
--- a/deps/npm/docs/content/using-npm/config.md
+++ b/deps/npm/docs/content/using-npm/config.md
@@ -61,6 +61,7 @@ The following shorthands are parsed on the command-line:
<!-- AUTOGENERATED CONFIG SHORTHANDS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
* `-a`: `--all`
* `--enjoy-by`: `--before`
* `-c`: `--call`
@@ -101,6 +102,8 @@ The following shorthands are parsed on the command-line:
* `--ws`: `--workspaces`
* `-y`: `--yes`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
<!-- AUTOGENERATED CONFIG SHORTHANDS END -->
If the specified configuration param resolves unambiguously to a known
@@ -128,6 +131,7 @@ npm ls --global --parseable --long --loglevel info
<!-- AUTOGENERATED CONFIG DESCRIPTIONS START -->
<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
#### `_auth`
* Default: null
@@ -139,6 +143,9 @@ Warning: This should generally not be set via a command-line option. It is
safer to use a registry-provided authentication bearer token stored in the
~/.npmrc file by running `npm login`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `access`
* Default: 'restricted' for scoped packages, 'public' for unscoped packages
@@ -149,6 +156,15 @@ If you want your scoped package to be publicly viewable (and installable)
set `--access=public`. The only valid values for `access` are `public` and
`restricted`. Unscoped packages _always_ have an access level of `public`.
+Note: Using the `--access` flag on the `npm publish` command will only set
+the package access level on the initial publish of the package. Any
+subsequent `npm publish` commands using the `--access` flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use `npm access`.
+
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `all`
* Default: false
@@ -158,6 +174,9 @@ When running `npm outdated` and `npm ls`, setting `--all` will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `allow-same-version`
* Default: false
@@ -166,6 +185,9 @@ upon by the current project.
Prevents throwing an error when `npm version` is used to set the new version
to the same value as the current version.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit`
* Default: true
@@ -176,6 +198,9 @@ default registry and all registries configured for scopes. See the
documentation for [`npm audit`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `audit-level`
* Default: null
@@ -184,6 +209,9 @@ submitted.
The minimum level of vulnerability for `npm audit` to exit with a non-zero
exit code.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `before`
* Default: null
@@ -199,6 +227,9 @@ If the requested version is a `dist-tag` and the given tag does not pass the
will be used. For example, `foo@latest` might install `foo@1.2` even though
`latest` is `2.0`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `bin-links`
* Default: true
@@ -211,6 +242,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `browser`
* Default: OS X: `"open"`, Windows: `"start"`, Others: `"xdg-open"`
@@ -223,6 +257,9 @@ terminal.
Set to `true` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ca`
* Default: null
@@ -249,6 +286,9 @@ ca[]="..."
See also the `strict-ssl` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cache`
* Default: Windows: `%LocalAppData%\npm-cache`, Posix: `~/.npm`
@@ -257,6 +297,9 @@ See also the `strict-ssl` config.
The location of npm's cache directory. See [`npm
cache`](/commands/npm-cache)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cafile`
* Default: null
@@ -266,6 +309,9 @@ A path to a file containing one or multiple Certificate Authority signing
certificates. Similar to the `ca` setting, but allows for multiple CA's, as
well as for the CA information to be stored in a file on disk.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `call`
* Default: ""
@@ -279,6 +325,9 @@ npm exec --package yo --package generator-node --call "yo node"
```
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cert`
* Default: null
@@ -295,6 +344,9 @@ cert="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----"
It is _not_ the path to a certificate file (and there is no "certfile"
option).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ci-name`
* Default: The name of the current CI system, or `null` when not on a known CI
@@ -305,6 +357,9 @@ The name of a continuous integration system. If not set explicitly, npm will
detect the current CI environment using the
[`@npmcli/ci-detect`](http://npm.im/@npmcli/ci-detect) module.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cidr`
* Default: null
@@ -313,6 +368,9 @@ detect the current CI environment using the
This is a list of CIDR address to be used when configuring limited access
tokens with the `npm token create` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `color`
* Default: true unless the NO_COLOR environ is set to something other than '0'
@@ -321,6 +379,9 @@ tokens with the `npm token create` command.
If false, never shows colors. If `"always"` then always shows colors. If
true, then only prints color codes for tty file descriptors.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `commit-hooks`
* Default: true
@@ -328,6 +389,9 @@ true, then only prints color codes for tty file descriptors.
Run git commit hooks when using the `npm version` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `depth`
* Default: `Infinity` if `--all` is set, otherwise `1`
@@ -338,6 +402,9 @@ The depth to go when recursing packages for `npm ls`.
If not set, `npm ls` will show only the immediate dependencies of the root
project. If `--all` is set, then npm will show all dependencies by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `description`
* Default: true
@@ -345,6 +412,9 @@ project. If `--all` is set, then npm will show all dependencies by default.
Show the description in `npm search`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff`
* Default:
@@ -352,6 +422,9 @@ Show the description in `npm search`
Define arguments to compare in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-dst-prefix`
* Default: "b/"
@@ -359,6 +432,9 @@ Define arguments to compare in `npm diff`.
Destination prefix to be used in `npm diff` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-ignore-all-space`
* Default: false
@@ -366,6 +442,9 @@ Destination prefix to be used in `npm diff` output.
Ignore whitespace when comparing lines in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-name-only`
* Default: false
@@ -373,6 +452,9 @@ Ignore whitespace when comparing lines in `npm diff`.
Prints only filenames when using `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-no-prefix`
* Default: false
@@ -383,6 +465,9 @@ Do not show any source or destination prefix in `npm diff` output.
Note: this causes `npm diff` to ignore the `--diff-src-prefix` and
`--diff-dst-prefix` configs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-src-prefix`
* Default: "a/"
@@ -390,6 +475,9 @@ Note: this causes `npm diff` to ignore the `--diff-src-prefix` and
Source prefix to be used in `npm diff` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-text`
* Default: false
@@ -397,6 +485,9 @@ Source prefix to be used in `npm diff` output.
Treat all files as text in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `diff-unified`
* Default: 3
@@ -404,6 +495,9 @@ Treat all files as text in `npm diff`.
The number of lines of context to print in `npm diff`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dry-run`
* Default: false
@@ -417,6 +511,9 @@ commands that modify your local installation, eg, `install`, `update`,
Note: This is NOT honored by other network related commands, eg `dist-tags`,
`owner`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `editor`
* Default: The EDITOR or VISUAL environment variables, or 'notepad.exe' on
@@ -425,6 +522,9 @@ Note: This is NOT honored by other network related commands, eg `dist-tags`,
The command to run for `npm edit` and `npm config edit`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `engine-strict`
* Default: false
@@ -436,6 +536,9 @@ Node.js version.
This can be overridden by setting the `--force` flag.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fetch-retries`
* Default: 2
@@ -447,6 +550,9 @@ from the registry.
npm will retry idempotent read requests to the registry in the case of
network failures or 5xx HTTP errors.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fetch-retry-factor`
* Default: 10
@@ -454,6 +560,9 @@ network failures or 5xx HTTP errors.
The "factor" config for the `retry` module to use when fetching packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fetch-retry-maxtimeout`
* Default: 60000 (1 minute)
@@ -462,6 +571,9 @@ The "factor" config for the `retry` module to use when fetching packages.
The "maxTimeout" config for the `retry` module to use when fetching
packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fetch-retry-mintimeout`
* Default: 10000 (10 seconds)
@@ -470,6 +582,9 @@ packages.
The "minTimeout" config for the `retry` module to use when fetching
packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fetch-timeout`
* Default: 300000 (5 minutes)
@@ -477,6 +592,9 @@ packages.
The maximum amount of time to wait for HTTP requests to complete.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `force`
* Default: false
@@ -502,6 +620,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `foreground-scripts`
* Default: false
@@ -514,6 +635,9 @@ input, output, and error with the main npm process.
Note that this will generally make installs run slower, and be much noisier,
but can be useful for debugging.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `format-package-lock`
* Default: true
@@ -522,6 +646,9 @@ but can be useful for debugging.
Format `package-lock.json` or `npm-shrinkwrap.json` as a human readable
file.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `fund`
* Default: true
@@ -531,6 +658,9 @@ When "true" displays the message at the end of each `npm install`
acknowledging the number of dependencies looking for funding. See [`npm
fund`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `git`
* Default: "git"
@@ -539,6 +669,9 @@ fund`](/commands/npm-fund) for details.
The command to use for git commands. If git is installed on the computer,
but is not in the `PATH`, then set this to the full path to the git binary.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `git-tag-version`
* Default: true
@@ -546,6 +679,9 @@ but is not in the `PATH`, then set this to the full path to the git binary.
Tag the commit when using the `npm version` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global`
* Default: false
@@ -560,6 +696,9 @@ folder instead of the current working directory. See
* bin files are linked to `{prefix}/bin`
* man pages are linked to `{prefix}/share/man`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `global-style`
* Default: false
@@ -572,6 +711,9 @@ on will be flattened in their `node_modules` folders. This obviously will
eliminate some deduping. If used with `legacy-bundling`, `legacy-bundling`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `globalconfig`
* Default: The global --prefix setting plus 'etc/npmrc'. For example,
@@ -580,6 +722,9 @@ will be preferred.
The config file to read for global config options.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `heading`
* Default: "npm"
@@ -587,6 +732,9 @@ The config file to read for global config options.
The string that starts all the debugging log output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `https-proxy`
* Default: null
@@ -597,6 +745,9 @@ A proxy to use for outgoing https requests. If the `HTTPS_PROXY` or
proxy settings will be honored by the underlying `make-fetch-happen`
library.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `if-present`
* Default: false
@@ -609,6 +760,9 @@ it's present and fail if the script fails. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `ignore-scripts`
* Default: false
@@ -621,6 +775,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if `ignore-scripts` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `include`
* Default:
@@ -633,6 +790,9 @@ This is the inverse of `--omit=<type>`.
Dependency types specified in `--include` will not be omitted, regardless of
the order in which omit/include are specified on the command-line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `include-staged`
* Default: false
@@ -643,6 +803,9 @@ Allow installing "staged" published packages, as defined by [npm RFC PR
This is experimental, and not implemented by the npm public registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-author-email`
* Default: ""
@@ -650,6 +813,9 @@ This is experimental, and not implemented by the npm public registry.
The value `npm init` should use by default for the package author's email.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-author-name`
* Default: ""
@@ -657,6 +823,9 @@ The value `npm init` should use by default for the package author's email.
The value `npm init` should use by default for the package author's name.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-author-url`
* Default: ""
@@ -665,6 +834,9 @@ The value `npm init` should use by default for the package author's name.
The value `npm init` should use by default for the package author's
homepage.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-license`
* Default: "ISC"
@@ -672,6 +844,9 @@ homepage.
The value `npm init` should use by default for the package license.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-module`
* Default: "~/.npm-init.js"
@@ -682,6 +857,9 @@ documentation for the
[init-package-json](https://github.com/npm/init-package-json) module for
more information, or [npm init](/commands/npm-init).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init-version`
* Default: "1.0.0"
@@ -690,6 +868,9 @@ more information, or [npm init](/commands/npm-init).
The value that `npm init` should use by default for the package version
number, if not already set in package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `json`
* Default: false
@@ -702,6 +883,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `key`
* Default: null
@@ -716,6 +900,9 @@ key="-----BEGIN PRIVATE KEY-----\nXXXX\nXXXX\n-----END PRIVATE KEY-----"
It is _not_ the path to a key file (and there is no "keyfile" option).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-bundling`
* Default: false
@@ -726,6 +913,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with `global-style` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `legacy-peer-deps`
* Default: false
@@ -744,6 +934,9 @@ This differs from `--omit=peer`, in that `--omit=peer` will avoid unpacking
Use of `legacy-peer-deps` is not recommended, as it will not enforce the
`peerDependencies` contract that meta-dependencies may rely on.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `link`
* Default: false
@@ -751,6 +944,9 @@ Use of `legacy-peer-deps` is not recommended, as it will not enforce the
Used with `npm ls`, limiting output to only those packages that are linked.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `local-address`
* Default: null
@@ -759,6 +955,9 @@ Used with `npm ls`, limiting output to only those packages that are linked.
The IP address of the local interface to use when making connections to the
npm registry. Must be IPv4 in versions of Node prior to 0.12.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `location`
* Default: "user" unless `--global` is passed, which will also set this value
@@ -767,6 +966,9 @@ npm registry. Must be IPv4 in versions of Node prior to 0.12.
When passed to `npm config` this refers to which config file to use.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `loglevel`
* Default: "notice"
@@ -781,6 +983,9 @@ Any logs of a higher level than the setting are shown. The default is
See also the `foreground-scripts` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `logs-max`
* Default: 10
@@ -788,6 +993,9 @@ See also the `foreground-scripts` config.
The maximum number of log files to store.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `long`
* Default: false
@@ -795,6 +1003,9 @@ The maximum number of log files to store.
Show extended information in `ls`, `search`, and `help-search`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `maxsockets`
* Default: 15
@@ -803,6 +1014,9 @@ Show extended information in `ls`, `search`, and `help-search`.
The maximum number of connections to use per origin (protocol/host/port
combination).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `message`
* Default: "%s"
@@ -812,6 +1026,9 @@ Commit message which is used by `npm version` when creating version commit.
Any "%s" in the message will be replaced with the version number.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `node-options`
* Default: null
@@ -821,6 +1038,9 @@ Options to pass through to Node.js via the `NODE_OPTIONS` environment
variable. This does not impact how npm itself is executed but it does impact
how lifecycle scripts are called.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `node-version`
* Default: Node.js `process.version` value
@@ -828,6 +1048,9 @@ how lifecycle scripts are called.
The node version to use when checking a package's `engines` setting.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `noproxy`
* Default: The value of the NO_PROXY environment variable
@@ -837,6 +1060,9 @@ Domain extensions that should bypass any proxies.
Also accepts a comma-delimited string.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `npm-version`
* Default: Output of `npm --version`
@@ -844,6 +1070,9 @@ Also accepts a comma-delimited string.
The npm version to use when checking a package's `engines` setting.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `offline`
* Default: false
@@ -852,6 +1081,9 @@ The npm version to use when checking a package's `engines` setting.
Force offline mode: no network requests will be done during install. To
allow the CLI to fill in missing cache data, see `--prefer-offline`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `omit`
* Default: 'dev' if the `NODE_ENV` environment variable is set to
@@ -870,6 +1102,9 @@ it will be included.
If the resulting omit list includes `'dev'`, then the `NODE_ENV` environment
variable will be set to `'production'` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `otp`
* Default: null
@@ -881,6 +1116,9 @@ when publishing or changing package permissions with `npm access`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `pack-destination`
* Default: "."
@@ -888,6 +1126,9 @@ password, npm will prompt on the command line for one.
Directory in which `npm pack` will save tarballs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package`
* Default:
@@ -895,6 +1136,9 @@ Directory in which `npm pack` will save tarballs.
The package to install for [`npm exec`](/commands/npm-exec)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock`
* Default: true
@@ -907,6 +1151,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use `npm prune`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `package-lock-only`
* Default: false
@@ -921,6 +1168,9 @@ instead of checking `node_modules` and downloading dependencies.
For `list` this means the output will be based on the tree described by the
`package-lock.json`, rather than the contents of `node_modules`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `parseable`
* Default: false
@@ -929,6 +1179,9 @@ For `list` this means the output will be based on the tree described by the
Output parseable results from commands that write to standard output. For
`npm search`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `prefer-offline`
* Default: false
@@ -938,6 +1191,9 @@ If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use
`--offline`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `prefer-online`
* Default: false
@@ -946,6 +1202,9 @@ will be requested from the server. To force full offline mode, use
If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `prefix`
* Default: In global mode, the folder where the node executable is installed.
@@ -956,6 +1215,9 @@ look for updates immediately even for fresh package data.
The location to install global items. If set on the command line, then it
forces non-global commands to run in the specified folder.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `preid`
* Default: ""
@@ -964,6 +1226,9 @@ forces non-global commands to run in the specified folder.
The "prerelease identifier" to use as a prefix for the "prerelease" part of
a semver. Like the `rc` in `1.2.0-rc.8`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `progress`
* Default: `true` unless running in a known CI system
@@ -974,6 +1239,9 @@ operations, if `process.stderr` is a TTY.
Set to `false` to suppress the progress bar.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `proxy`
* Default: null
@@ -983,6 +1251,9 @@ A proxy to use for outgoing http requests. If the `HTTP_PROXY` or
`http_proxy` environment variables are set, proxy settings will be honored
by the underlying `request` library.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `read-only`
* Default: false
@@ -991,6 +1262,9 @@ by the underlying `request` library.
This is used to mark a token as unable to publish when configuring limited
access tokens with the `npm token create` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `rebuild-bundle`
* Default: true
@@ -998,6 +1272,9 @@ access tokens with the `npm token create` command.
Rebuild bundled dependencies after installation.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `registry`
* Default: "https://registry.npmjs.org/"
@@ -1005,6 +1282,9 @@ Rebuild bundled dependencies after installation.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save`
* Default: true
@@ -1015,6 +1295,9 @@ Save installed packages to a package.json file as dependencies.
When used with the `npm rm` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-bundle`
* Default: false
@@ -1026,6 +1309,9 @@ If a package would be saved at install time by the use of `--save`,
Ignore if `--save-peer` is set, since peerDependencies cannot be bundled.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-dev`
* Default: false
@@ -1033,6 +1319,9 @@ Ignore if `--save-peer` is set, since peerDependencies cannot be bundled.
Save installed packages to a package.json file as `devDependencies`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-exact`
* Default: false
@@ -1041,6 +1330,9 @@ Save installed packages to a package.json file as `devDependencies`.
Dependencies saved to package.json will be configured with an exact version
rather than using npm's default semver range operator.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-optional`
* Default: false
@@ -1048,6 +1340,9 @@ rather than using npm's default semver range operator.
Save installed packages to a package.json file as `optionalDependencies`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-peer`
* Default: false
@@ -1055,6 +1350,9 @@ Save installed packages to a package.json file as `optionalDependencies`.
Save installed packages. to a package.json file as `peerDependencies`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-prefix`
* Default: "^"
@@ -1068,6 +1366,9 @@ to `^1.2.3` which allows minor upgrades for that package, but after `npm
config set save-prefix='~'` it would be set to `~1.2.3` which only allows
patch upgrades.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `save-prod`
* Default: false
@@ -1080,6 +1381,9 @@ you want to move it to be a non-optional production dependency.
This is the default behavior if `--save` is true, and neither `--save-dev`
or `--save-optional` are true.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `scope`
* Default: the scope of the current project, if any, or ""
@@ -1110,6 +1414,9 @@ npm init --scope=@foo --yes
```
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `script-shell`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -1118,6 +1425,9 @@ npm init --scope=@foo --yes
The shell to use for scripts run with the `npm exec`, `npm run` and `npm
init <pkg>` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchexclude`
* Default: ""
@@ -1125,6 +1435,9 @@ init <pkg>` commands.
Space-separated options that limit the results from search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchlimit`
* Default: 20
@@ -1133,6 +1446,9 @@ Space-separated options that limit the results from search.
Number of items to limit search results to. Will not apply at all to legacy
searches.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchopts`
* Default: ""
@@ -1140,6 +1456,9 @@ searches.
Space-separated options that are always passed to search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `searchstaleness`
* Default: 900
@@ -1148,6 +1467,9 @@ Space-separated options that are always passed to search.
The age of the cache, in seconds, before another registry request is made if
using legacy search endpoint.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `shell`
* Default: SHELL environment variable, or "bash" on Posix, or "cmd.exe" on
@@ -1156,6 +1478,9 @@ using legacy search endpoint.
The shell to run for the `npm explore` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `sign-git-commit`
* Default: false
@@ -1167,6 +1492,9 @@ version using `-S` to add a signature.
Note that git requires you to have set up GPG keys in your git configs for
this to work properly.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `sign-git-tag`
* Default: false
@@ -1178,6 +1506,9 @@ If set to true, then the `npm version` command will tag the version using
Note that git requires you to have set up GPG keys in your git configs for
this to work properly.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-peer-deps`
* Default: false
@@ -1197,6 +1528,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If `--strict-peer-deps` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `strict-ssl`
* Default: true
@@ -1207,6 +1541,9 @@ via https.
See also the `ca` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `tag`
* Default: "latest"
@@ -1221,6 +1558,9 @@ command, if no explicit tag is given.
When used by the `npm diff` command, this is the tag used to fetch the
tarball that will be compared with the local files by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `tag-version-prefix`
* Default: "v"
@@ -1234,6 +1574,9 @@ Because other tools may rely on the convention that npm version tags look
like `v1.0.0`, _only use this property if it is absolutely necessary_. In
particular, use care when overriding this setting for public packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `timing`
* Default: false
@@ -1246,6 +1589,9 @@ successfully. `_timing.json` is a newline delimited list of JSON objects.
You can quickly view it with this [json](https://npm.im/json) command line:
`npm exec -- json -g < ~/.npm/_timing.json`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `umask`
* Default: 0
@@ -1266,6 +1612,9 @@ Thus, the effective default umask value on most POSIX systems is 0o22,
meaning that folders and executables are created with a mode of 0o755 and
other files are created with a mode of 0o644.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `unicode`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -1275,6 +1624,9 @@ other files are created with a mode of 0o644.
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `update-notifier`
* Default: true
@@ -1283,6 +1635,9 @@ false, it uses ascii characters instead of unicode glyphs.
Set to false to suppress the update notification when using an older version
of npm than the latest.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `usage`
* Default: false
@@ -1290,6 +1645,9 @@ of npm than the latest.
Show short usage output about the command specified.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `user-agent`
* Default: "npm/{npm-version} node/{node-version} {platform} {arch}
@@ -1308,6 +1666,9 @@ their actual counterparts:
* `{ci}` - The value of the `ci-name` config, if set, prefixed with `ci/`, or
an empty string if `ci-name` is empty.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `userconfig`
* Default: "~/.npmrc"
@@ -1319,6 +1680,9 @@ This may be overridden by the `npm_config_userconfig` environment variable
or the `--userconfig` command line option, but may _not_ be overridden by
settings in the `globalconfig` file.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `version`
* Default: false
@@ -1328,6 +1692,9 @@ If true, output the npm version and exit successfully.
Only relevant when specified explicitly on the command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `versions`
* Default: false
@@ -1339,6 +1706,9 @@ exists, and exit successfully.
Only relevant when specified explicitly on the command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `viewer`
* Default: "man" on Posix, "browser" on Windows
@@ -1348,6 +1718,9 @@ The program to use to view help content.
Set to `"browser"` to view html help content in the default web browser.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `which`
* Default: null
@@ -1355,6 +1728,9 @@ Set to `"browser"` to view html help content in the default web browser.
If there are multiple funding sources, which 1-indexed source URL to open.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspace`
* Default:
@@ -1377,6 +1753,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `workspaces`
* Default: false
@@ -1387,6 +1766,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `yes`
* Default: null
@@ -1395,6 +1777,9 @@ This value is not exported to the environment for child processes.
Automatically answer "yes" to any prompts that npm might print on the
command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `also`
* Default: null
@@ -1403,6 +1788,9 @@ command line.
When set to `dev` or `development`, this is an alias for `--include=dev`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `auth-type`
* Default: "legacy"
@@ -1412,6 +1800,9 @@ When set to `dev` or `development`, this is an alias for `--include=dev`.
What authentication strategy to use with `adduser`/`login`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cache-max`
* Default: Infinity
@@ -1420,6 +1811,9 @@ What authentication strategy to use with `adduser`/`login`.
`--cache-max=0` is an alias for `--prefer-online`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `cache-min`
* Default: 0
@@ -1428,6 +1822,9 @@ What authentication strategy to use with `adduser`/`login`.
`--cache-min=9999 (or bigger)` is an alias for `--prefer-offline`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `dev`
* Default: false
@@ -1436,6 +1833,9 @@ What authentication strategy to use with `adduser`/`login`.
Alias for `--include=dev`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.author.email`
* Default: ""
@@ -1444,6 +1844,9 @@ Alias for `--include=dev`.
Alias for `--init-author-email`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.author.name`
* Default: ""
@@ -1452,6 +1855,9 @@ Alias for `--init-author-email`
Alias for `--init-author-name`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.author.url`
* Default: ""
@@ -1460,6 +1866,9 @@ Alias for `--init-author-name`
Alias for `--init-author-url`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.license`
* Default: "ISC"
@@ -1468,6 +1877,9 @@ Alias for `--init-author-url`
Alias for `--init-license`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.module`
* Default: "~/.npm-init.js"
@@ -1476,6 +1888,9 @@ Alias for `--init-license`
Alias for `--init-module`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `init.version`
* Default: "1.0.0"
@@ -1484,6 +1899,9 @@ Alias for `--init-module`
Alias for `--init-version`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `only`
* Default: null
@@ -1492,6 +1910,9 @@ Alias for `--init-version`
When set to `prod` or `production`, this is an alias for `--omit=dev`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `optional`
* Default: null
@@ -1503,6 +1924,9 @@ Default value does install optional deps unless otherwise omitted.
Alias for --include=optional or --omit=optional
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `production`
* Default: null
@@ -1511,6 +1935,9 @@ Alias for --include=optional or --omit=optional
Alias for `--omit=dev`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `shrinkwrap`
* Default: true
@@ -1519,6 +1946,9 @@ Alias for `--omit=dev`
Alias for --package-lock
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `sso-poll-frequency`
* Default: 500
@@ -1529,6 +1959,9 @@ Alias for --package-lock
When used with SSO-enabled `auth-type`s, configures how regularly the
registry should be polled while the user is completing authentication.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `sso-type`
* Default: "oauth"
@@ -1538,6 +1971,9 @@ registry should be polled while the user is completing authentication.
If `--auth-type=sso`, the type of SSO type to use.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### `tmp`
* Default: The value returned by the Node.js `os.tmpdir()` method
@@ -1550,6 +1986,8 @@ If `--auth-type=sso`, the type of SSO type to use.
Historically, the location where temporary files were stored. No longer
relevant.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
<!-- AUTOGENERATED CONFIG DESCRIPTIONS END -->
### See also
diff --git a/deps/npm/docs/content/using-npm/registry.md b/deps/npm/docs/content/using-npm/registry.md
index c07fa7a48e..3b07ab11c5 100644
--- a/deps/npm/docs/content/using-npm/registry.md
+++ b/deps/npm/docs/content/using-npm/registry.md
@@ -12,7 +12,7 @@ package info.
npm is configured to use the **npm public registry** at
<https://registry.npmjs.org> by default. Use of the npm public registry is
-subject to terms of use available at <https://www.npmjs.com/policies/terms>.
+subject to terms of use available at <https://docs.npmjs.com/policies/terms>.
You can configure npm to use any compatible registry you like, and even run
your own registry. Use of someone else's registry may be governed by their
diff --git a/deps/npm/docs/output/commands/npm-access.html b/deps/npm/docs/output/commands/npm-access.html
index 68cd1973e5..bfece57cd7 100644
--- a/deps/npm/docs/output/commands/npm-access.html
+++ b/deps/npm/docs/output/commands/npm-access.html
@@ -219,12 +219,15 @@ fail with an HTTP 402 status code (logically enough), unless you use
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -235,6 +238,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="https://npm.im/libnpmaccess"><code>libnpmaccess</code></a></li>
diff --git a/deps/npm/docs/output/commands/npm-adduser.html b/deps/npm/docs/output/commands/npm-adduser.html
index 27851b1dee..99cf7d373b 100644
--- a/deps/npm/docs/output/commands/npm-adduser.html
+++ b/deps/npm/docs/output/commands/npm-adduser.html
@@ -165,12 +165,15 @@ your existing record.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="scope"><code>scope</code></h4>
<ul>
<li>Default: the scope of the current project, if any, or “”</li>
@@ -193,6 +196,8 @@ installation of packages specified according to the pattern
npm init --scope=@foo --yes
</code></pre>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../using-npm/registry.html">npm registry</a></li>
diff --git a/deps/npm/docs/output/commands/npm-audit.html b/deps/npm/docs/output/commands/npm-audit.html
index 5cffb546dc..37bc32edd9 100644
--- a/deps/npm/docs/output/commands/npm-audit.html
+++ b/deps/npm/docs/output/commands/npm-audit.html
@@ -271,6 +271,7 @@ fixing anything:</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit-level"><code>audit-level</code></h4>
<ul>
<li>Default: null</li>
@@ -278,6 +279,8 @@ fixing anything:</p>
</ul>
<p>The minimum level of vulnerability for <code>npm audit</code> to exit with a non-zero
exit code.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -289,6 +292,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="force"><code>force</code></h4>
<ul>
<li>Default: false</li>
@@ -313,6 +318,8 @@ range (including SemVer-major changes).</li>
</ul>
<p>If you don’t have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -324,6 +331,8 @@ recommended that you do not use this option!</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock-only"><code>package-lock-only</code></h4>
<ul>
<li>Default: false</li>
@@ -335,6 +344,8 @@ ignoring <code>node_modules</code>.</p>
instead of checking <code>node_modules</code> and downloading dependencies.</p>
<p>For <code>list</code> this means the output will be based on the tree described by the
<code>package-lock.json</code>, rather than the contents of <code>node_modules</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -349,6 +360,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -368,6 +381,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -377,6 +392,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-bin.html b/deps/npm/docs/output/commands/npm-bin.html
index 32b8422f2c..073b26d46d 100644
--- a/deps/npm/docs/output/commands/npm-bin.html
+++ b/deps/npm/docs/output/commands/npm-bin.html
@@ -153,6 +153,7 @@ npm command-line interface
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -168,6 +169,8 @@ of the current working directory.</li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-prefix.html">npm prefix</a></li>
diff --git a/deps/npm/docs/output/commands/npm-bugs.html b/deps/npm/docs/output/commands/npm-bugs.html
index db12c0445a..e9e40aecec 100644
--- a/deps/npm/docs/output/commands/npm-bugs.html
+++ b/deps/npm/docs/output/commands/npm-bugs.html
@@ -157,6 +157,7 @@ will search for a <code>package.json</code> in the current folder and use the <c
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="browser"><code>browser</code></h4>
<ul>
<li>Default: OS X: <code>"open"</code>, Windows: <code>"start"</code>, Others: <code>"xdg-open"</code></li>
@@ -166,6 +167,8 @@ will search for a <code>package.json</code> in the current folder and use the <c
<p>Set to <code>false</code> to suppress browser behavior and instead print urls to
terminal.</p>
<p>Set to <code>true</code> to use default system URL opener.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
@@ -173,6 +176,8 @@ terminal.</p>
</ul>
<p>The base URL of the npm registry.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-docs.html">npm docs</a></li>
diff --git a/deps/npm/docs/output/commands/npm-cache.html b/deps/npm/docs/output/commands/npm-cache.html
index 102d3ed1d0..a8c2ed8e7d 100644
--- a/deps/npm/docs/output/commands/npm-cache.html
+++ b/deps/npm/docs/output/commands/npm-cache.html
@@ -206,6 +206,7 @@ data that was inserted.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cache"><code>cache</code></h4>
<ul>
<li>Default: Windows: <code>%LocalAppData%\npm-cache</code>, Posix: <code>~/.npm</code></li>
@@ -213,6 +214,8 @@ data that was inserted.</p>
</ul>
<p>The location of npm’s cache directory. See <a href="../commands/npm-cache.html"><code>npm cache</code></a></p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../configuring-npm/folders.html">npm folders</a></li>
diff --git a/deps/npm/docs/output/commands/npm-ci.html b/deps/npm/docs/output/commands/npm-ci.html
index 9f5c85b363..e52cf55e9e 100644
--- a/deps/npm/docs/output/commands/npm-ci.html
+++ b/deps/npm/docs/output/commands/npm-ci.html
@@ -193,6 +193,7 @@ cache:
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -202,6 +203,8 @@ cache:
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -212,6 +215,8 @@ submitted.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -219,6 +224,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-config.html b/deps/npm/docs/output/commands/npm-config.html
index 8d6e162072..cbf13aff8d 100644
--- a/deps/npm/docs/output/commands/npm-config.html
+++ b/deps/npm/docs/output/commands/npm-config.html
@@ -200,6 +200,7 @@ global config.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -211,6 +212,8 @@ global config.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -225,6 +228,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="editor"><code>editor</code></h4>
<ul>
<li>Default: The EDITOR or VISUAL environment variables, or ‘notepad.exe’ on
@@ -232,6 +237,8 @@ Windows, or ‘vim’ on Unix systems</li>
<li>Type: String</li>
</ul>
<p>The command to run for <code>npm edit</code> and <code>npm config edit</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="location"><code>location</code></h4>
<ul>
<li>Default: “user” unless <code>--global</code> is passed, which will also set this value
@@ -239,6 +246,8 @@ to “global”</li>
<li>Type: “global”, “user”, or “project”</li>
</ul>
<p>When passed to <code>npm config</code> this refers to which config file to use.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
@@ -246,6 +255,8 @@ to “global”</li>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../configuring-npm/folders.html">npm folders</a></li>
diff --git a/deps/npm/docs/output/commands/npm-dedupe.html b/deps/npm/docs/output/commands/npm-dedupe.html
index 9de232141e..084bcc6622 100644
--- a/deps/npm/docs/output/commands/npm-dedupe.html
+++ b/deps/npm/docs/output/commands/npm-dedupe.html
@@ -194,6 +194,7 @@ result in new modules being installed.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -205,6 +206,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -214,6 +217,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -230,6 +235,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -240,6 +247,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -254,6 +263,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -264,6 +275,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -273,6 +286,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -283,6 +298,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -290,6 +307,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -301,6 +320,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -320,6 +341,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -329,6 +352,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-find-dupes.html">npm find-dupes</a></li>
diff --git a/deps/npm/docs/output/commands/npm-deprecate.html b/deps/npm/docs/output/commands/npm-deprecate.html
index 982c1e6ab8..9544eb5b95 100644
--- a/deps/npm/docs/output/commands/npm-deprecate.html
+++ b/deps/npm/docs/output/commands/npm-deprecate.html
@@ -168,12 +168,15 @@ format an empty string.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -184,6 +187,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-publish.html">npm publish</a></li>
diff --git a/deps/npm/docs/output/commands/npm-diff.html b/deps/npm/docs/output/commands/npm-diff.html
index 3f278d4901..63e4e67fee 100644
--- a/deps/npm/docs/output/commands/npm-diff.html
+++ b/deps/npm/docs/output/commands/npm-diff.html
@@ -260,30 +260,39 @@ located within the folder <code>./lib/</code> and changed lines of code within t
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff"><code>diff</code></h4>
<ul>
<li>Default:</li>
<li>Type: String (can be set multiple times)</li>
</ul>
<p>Define arguments to compare in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-name-only"><code>diff-name-only</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Prints only filenames when using <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-unified"><code>diff-unified</code></h4>
<ul>
<li>Default: 3</li>
<li>Type: Number</li>
</ul>
<p>The number of lines of context to print in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-ignore-all-space"><code>diff-ignore-all-space</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Ignore whitespace when comparing lines in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-no-prefix"><code>diff-no-prefix</code></h4>
<ul>
<li>Default: false</li>
@@ -292,24 +301,32 @@ located within the folder <code>./lib/</code> and changed lines of code within t
<p>Do not show any source or destination prefix in <code>npm diff</code> output.</p>
<p>Note: this causes <code>npm diff</code> to ignore the <code>--diff-src-prefix</code> and
<code>--diff-dst-prefix</code> configs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-src-prefix"><code>diff-src-prefix</code></h4>
<ul>
<li>Default: “a/”</li>
<li>Type: String</li>
</ul>
<p>Source prefix to be used in <code>npm diff</code> output.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-dst-prefix"><code>diff-dst-prefix</code></h4>
<ul>
<li>Default: “b/”</li>
<li>Type: String</li>
</ul>
<p>Destination prefix to be used in <code>npm diff</code> output.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-text"><code>diff-text</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Treat all files as text in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -324,6 +341,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="tag"><code>tag</code></h4>
<ul>
<li>Default: “latest”</li>
@@ -335,6 +354,8 @@ then it will install the specified tag.</p>
command, if no explicit tag is given.</p>
<p>When used by the <code>npm diff</code> command, this is the tag used to fetch the
tarball that will be compared with the local files by default.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -354,6 +375,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -363,6 +386,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="../commands/npm-outdated.html">npm outdated</a></li>
diff --git a/deps/npm/docs/output/commands/npm-dist-tag.html b/deps/npm/docs/output/commands/npm-dist-tag.html
index 0b80bd8048..d7b96250fa 100644
--- a/deps/npm/docs/output/commands/npm-dist-tag.html
+++ b/deps/npm/docs/output/commands/npm-dist-tag.html
@@ -211,6 +211,7 @@ not begin with a number or the letter <code>v</code>.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -230,6 +231,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -239,6 +242,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-publish.html">npm publish</a></li>
diff --git a/deps/npm/docs/output/commands/npm-docs.html b/deps/npm/docs/output/commands/npm-docs.html
index ab740bfb0f..b42b14d4e3 100644
--- a/deps/npm/docs/output/commands/npm-docs.html
+++ b/deps/npm/docs/output/commands/npm-docs.html
@@ -158,6 +158,7 @@ the <code>name</code> property.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="browser"><code>browser</code></h4>
<ul>
<li>Default: OS X: <code>"open"</code>, Windows: <code>"start"</code>, Others: <code>"xdg-open"</code></li>
@@ -167,12 +168,16 @@ the <code>name</code> property.</p>
<p>Set to <code>false</code> to suppress browser behavior and instead print urls to
terminal.</p>
<p>Set to <code>true</code> to use default system URL opener.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -192,6 +197,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -201,6 +208,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-view.html">npm view</a></li>
diff --git a/deps/npm/docs/output/commands/npm-doctor.html b/deps/npm/docs/output/commands/npm-doctor.html
index 4b4d572909..9f81f5c83d 100644
--- a/deps/npm/docs/output/commands/npm-doctor.html
+++ b/deps/npm/docs/output/commands/npm-doctor.html
@@ -224,6 +224,7 @@ reset the cache.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
@@ -231,6 +232,8 @@ reset the cache.</p>
</ul>
<p>The base URL of the npm registry.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-bugs.html">npm bugs</a></li>
diff --git a/deps/npm/docs/output/commands/npm-edit.html b/deps/npm/docs/output/commands/npm-edit.html
index 26b533ae50..5adf831eab 100644
--- a/deps/npm/docs/output/commands/npm-edit.html
+++ b/deps/npm/docs/output/commands/npm-edit.html
@@ -160,6 +160,7 @@ changes to your locally installed copy.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="editor"><code>editor</code></h4>
<ul>
<li>Default: The EDITOR or VISUAL environment variables, or ‘notepad.exe’ on
@@ -168,6 +169,8 @@ Windows, or ‘vim’ on Unix systems</li>
</ul>
<p>The command to run for <code>npm edit</code> and <code>npm config edit</code>.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../configuring-npm/folders.html">npm folders</a></li>
diff --git a/deps/npm/docs/output/commands/npm-exec.html b/deps/npm/docs/output/commands/npm-exec.html
index 0a5993f756..5ae53a8cb4 100644
--- a/deps/npm/docs/output/commands/npm-exec.html
+++ b/deps/npm/docs/output/commands/npm-exec.html
@@ -235,12 +235,15 @@ thus be equivalent to the <code>npx</code> command above:</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package"><code>package</code></h4>
<ul>
<li>Default:</li>
<li>Type: String (can be set multiple times)</li>
</ul>
<p>The package to install for <a href="../commands/npm-exec.html"><code>npm exec</code></a></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="call"><code>call</code></h4>
<ul>
<li>Default: “”</li>
@@ -250,6 +253,8 @@ thus be equivalent to the <code>npx</code> command above:</p>
custom command to be run along with the installed packages.</p>
<pre lang="bash"><code>npm exec --package yo --package generator-node --call "yo node"
</code></pre>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -269,6 +274,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -278,6 +285,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="examples">Examples</h3>
<p>Run the version of <code>tap</code> in the local dependencies, with the provided
arguments:</p>
diff --git a/deps/npm/docs/output/commands/npm-explain.html b/deps/npm/docs/output/commands/npm-explain.html
index decfd4d556..a62c45d323 100644
--- a/deps/npm/docs/output/commands/npm-explain.html
+++ b/deps/npm/docs/output/commands/npm-explain.html
@@ -184,6 +184,7 @@ node_modules/nyc/node_modules/find-up
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -195,6 +196,8 @@ node_modules/nyc/node_modules/find-up
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -215,6 +218,8 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-config.html">npm config</a></li>
diff --git a/deps/npm/docs/output/commands/npm-explore.html b/deps/npm/docs/output/commands/npm-explore.html
index 69c5ec5c8e..b5c2d1e870 100644
--- a/deps/npm/docs/output/commands/npm-explore.html
+++ b/deps/npm/docs/output/commands/npm-explore.html
@@ -161,6 +161,7 @@ sure to use <code>npm rebuild &lt;pkg&gt;</code> if you make any changes.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="shell"><code>shell</code></h4>
<ul>
<li>Default: SHELL environment variable, or “bash” on Posix, or “cmd.exe” on
@@ -169,6 +170,8 @@ Windows</li>
</ul>
<p>The shell to run for the <code>npm explore</code> command.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../configuring-npm/folders.html">npm folders</a></li>
diff --git a/deps/npm/docs/output/commands/npm-find-dupes.html b/deps/npm/docs/output/commands/npm-find-dupes.html
index 9f6c4de785..00f77f3d74 100644
--- a/deps/npm/docs/output/commands/npm-find-dupes.html
+++ b/deps/npm/docs/output/commands/npm-find-dupes.html
@@ -153,6 +153,7 @@ duplications, without actually changing the package tree.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -164,6 +165,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -173,6 +176,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -189,6 +194,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -199,6 +206,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -213,6 +222,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -223,6 +234,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -232,6 +245,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -242,6 +257,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -249,6 +266,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -268,6 +287,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -277,6 +298,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-dedupe.html">npm dedupe</a></li>
diff --git a/deps/npm/docs/output/commands/npm-fund.html b/deps/npm/docs/output/commands/npm-fund.html
index 074ac10573..0cebb01865 100644
--- a/deps/npm/docs/output/commands/npm-fund.html
+++ b/deps/npm/docs/output/commands/npm-fund.html
@@ -189,6 +189,7 @@ test-workspaces-fund@1.0.0
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -200,6 +201,8 @@ test-workspaces-fund@1.0.0
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="browser"><code>browser</code></h4>
<ul>
<li>Default: OS X: <code>"open"</code>, Windows: <code>"start"</code>, Others: <code>"xdg-open"</code></li>
@@ -209,6 +212,8 @@ saving them to your <code>package.json</code>.</li>
<p>Set to <code>false</code> to suppress browser behavior and instead print urls to
terminal.</p>
<p>Set to <code>true</code> to use default system URL opener.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="unicode"><code>unicode</code></h4>
<ul>
<li>Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -217,6 +222,8 @@ as defined by the <code>LC_ALL</code>, <code>LC_CTYPE</code>, or <code>LANG</cod
</ul>
<p>When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -236,6 +243,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="which"><code>which</code></h4>
<ul>
<li>Default: null</li>
@@ -243,6 +252,8 @@ brand new workspace within the project.</p>
</ul>
<p>If there are multiple funding sources, which 1-indexed source URL to open.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-help-search.html b/deps/npm/docs/output/commands/npm-help-search.html
index 2e69c210d4..1bef039df2 100644
--- a/deps/npm/docs/output/commands/npm-help-search.html
+++ b/deps/npm/docs/output/commands/npm-help-search.html
@@ -158,6 +158,7 @@ directly.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
@@ -165,6 +166,8 @@ directly.</p>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm.html">npm</a></li>
diff --git a/deps/npm/docs/output/commands/npm-help.html b/deps/npm/docs/output/commands/npm-help.html
index a752fe2ec1..c171cb8ba0 100644
--- a/deps/npm/docs/output/commands/npm-help.html
+++ b/deps/npm/docs/output/commands/npm-help.html
@@ -157,6 +157,7 @@ topic, so unique matches are equivalent to specifying a topic name.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="viewer"><code>viewer</code></h4>
<ul>
<li>Default: “man” on Posix, “browser” on Windows</li>
@@ -165,6 +166,8 @@ topic, so unique matches are equivalent to specifying a topic name.</p>
<p>The program to use to view help content.</p>
<p>Set to <code>"browser"</code> to view html help content in the default web browser.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm.html">npm</a></li>
diff --git a/deps/npm/docs/output/commands/npm-hook.html b/deps/npm/docs/output/commands/npm-hook.html
index aa0d2a841d..a247dacf0a 100644
--- a/deps/npm/docs/output/commands/npm-hook.html
+++ b/deps/npm/docs/output/commands/npm-hook.html
@@ -192,12 +192,15 @@ the request came from your own configured hook.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -208,6 +211,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="https://blog.npmjs.org/post/145260155635/introducing-hooks-get-notifications-of-npm">“Introducing Hooks” blog post</a></li>
diff --git a/deps/npm/docs/output/commands/npm-init.html b/deps/npm/docs/output/commands/npm-init.html
index eaa5dfe0f7..b9733a3b52 100644
--- a/deps/npm/docs/output/commands/npm-init.html
+++ b/deps/npm/docs/output/commands/npm-init.html
@@ -246,6 +246,7 @@ dot to represent the current directory in that context, e.g: <code>react-app .</
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="yes"><code>yes</code></h4>
<ul>
<li>Default: null</li>
@@ -253,6 +254,8 @@ dot to represent the current directory in that context, e.g: <code>react-app .</
</ul>
<p>Automatically answer “yes” to any prompts that npm might print on the
command line.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="force"><code>force</code></h4>
<ul>
<li>Default: false</li>
@@ -277,6 +280,8 @@ range (including SemVer-major changes).</li>
</ul>
<p>If you don’t have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -296,6 +301,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -305,6 +312,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="http://npm.im/init-package-json">init-package-json module</a></li>
diff --git a/deps/npm/docs/output/commands/npm-install-ci-test.html b/deps/npm/docs/output/commands/npm-install-ci-test.html
index d7414ff56c..46446a2e5b 100644
--- a/deps/npm/docs/output/commands/npm-install-ci-test.html
+++ b/deps/npm/docs/output/commands/npm-install-ci-test.html
@@ -154,6 +154,7 @@ alias: npm cit
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -163,6 +164,8 @@ alias: npm cit
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -173,6 +176,8 @@ submitted.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -180,6 +185,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install-test.html">npm install-test</a></li>
diff --git a/deps/npm/docs/output/commands/npm-install-test.html b/deps/npm/docs/output/commands/npm-install-test.html
index d2f536e5d8..db0faf2fa1 100644
--- a/deps/npm/docs/output/commands/npm-install-test.html
+++ b/deps/npm/docs/output/commands/npm-install-test.html
@@ -163,6 +163,7 @@ takes exactly the same arguments as <code>npm install</code>.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save"><code>save</code></h4>
<ul>
<li>Default: true</li>
@@ -171,6 +172,8 @@ takes exactly the same arguments as <code>npm install</code>.</p>
<p>Save installed packages to a package.json file as dependencies.</p>
<p>When used with the <code>npm rm</code> command, removes the dependency from
package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-exact"><code>save-exact</code></h4>
<ul>
<li>Default: false</li>
@@ -178,6 +181,8 @@ package.json.</p>
</ul>
<p>Dependencies saved to package.json will be configured with an exact version
rather than using npm’s default semver range operator.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -192,6 +197,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -203,6 +210,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -212,6 +221,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -228,6 +239,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -238,6 +251,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -252,6 +267,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -262,6 +279,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -271,6 +290,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -281,6 +302,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -288,6 +311,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -299,6 +324,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -318,6 +345,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -327,6 +356,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-install.html b/deps/npm/docs/output/commands/npm-install.html
index cebc5ac780..e33148691f 100644
--- a/deps/npm/docs/output/commands/npm-install.html
+++ b/deps/npm/docs/output/commands/npm-install.html
@@ -485,6 +485,7 @@ does.</p>
<p>These are some of the most common options related to installation.</p>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save"><code>save</code></h4>
<ul>
<li>Default: true</li>
@@ -493,6 +494,8 @@ does.</p>
<p>Save installed packages to a package.json file as dependencies.</p>
<p>When used with the <code>npm rm</code> command, removes the dependency from
package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-exact"><code>save-exact</code></h4>
<ul>
<li>Default: false</li>
@@ -500,6 +503,8 @@ package.json.</p>
</ul>
<p>Dependencies saved to package.json will be configured with an exact version
rather than using npm’s default semver range operator.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -514,6 +519,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -525,6 +532,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -534,6 +543,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -550,6 +561,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -560,6 +573,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -574,6 +589,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -584,6 +601,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -593,6 +612,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -603,6 +624,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -610,6 +633,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -621,6 +646,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -640,6 +667,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -649,6 +678,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="algorithm">Algorithm</h3>
<p>Given a <code>package{dep}</code> structure: <code>A{B,C}, B{C}, C{D}</code>,
the npm install algorithm produces:</p>
diff --git a/deps/npm/docs/output/commands/npm-link.html b/deps/npm/docs/output/commands/npm-link.html
index 6ac2699867..ca480e8d85 100644
--- a/deps/npm/docs/output/commands/npm-link.html
+++ b/deps/npm/docs/output/commands/npm-link.html
@@ -219,6 +219,7 @@ workspace(s).</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save"><code>save</code></h4>
<ul>
<li>Default: true</li>
@@ -227,6 +228,8 @@ workspace(s).</p>
<p>Save installed packages to a package.json file as dependencies.</p>
<p>When used with the <code>npm rm</code> command, removes the dependency from
package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-exact"><code>save-exact</code></h4>
<ul>
<li>Default: false</li>
@@ -234,6 +237,8 @@ package.json.</p>
</ul>
<p>Dependencies saved to package.json will be configured with an exact version
rather than using npm’s default semver range operator.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -248,6 +253,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -259,6 +266,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -268,6 +277,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -284,6 +295,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -294,6 +307,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -308,6 +323,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -318,6 +335,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -327,6 +346,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -337,6 +358,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -344,6 +367,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -355,6 +380,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -374,6 +401,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -383,6 +412,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../using-npm/developers.html">npm developers</a></li>
diff --git a/deps/npm/docs/output/commands/npm-logout.html b/deps/npm/docs/output/commands/npm-logout.html
index d6ef8a0f2e..ace122674d 100644
--- a/deps/npm/docs/output/commands/npm-logout.html
+++ b/deps/npm/docs/output/commands/npm-logout.html
@@ -160,12 +160,15 @@ connected to that scope, if set.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="scope"><code>scope</code></h4>
<ul>
<li>Default: the scope of the current project, if any, or “”</li>
@@ -188,6 +191,8 @@ installation of packages specified according to the pattern
npm init --scope=@foo --yes
</code></pre>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-adduser.html">npm adduser</a></li>
diff --git a/deps/npm/docs/output/commands/npm-ls.html b/deps/npm/docs/output/commands/npm-ls.html
index 324980536d..fb05ec983d 100644
--- a/deps/npm/docs/output/commands/npm-ls.html
+++ b/deps/npm/docs/output/commands/npm-ls.html
@@ -159,7 +159,7 @@ tree at all, use <a href="../commands/npm-explain.html"><code>npm explain</code>
the results to only the paths to the packages named. Note that nested
packages will <em>also</em> show the paths to the specified packages. For
example, running <code>npm ls promzard</code> in npm’s source tree will show:</p>
-<pre lang="bash"><code>npm@7.20.3 /path/to/npm
+<pre lang="bash"><code>npm@7.21.0 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
</code></pre>
@@ -194,6 +194,7 @@ least the default human-readable <code>npm ls</code> output in npm v8.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="all"><code>all</code></h4>
<ul>
<li>Default: false</li>
@@ -202,6 +203,8 @@ least the default human-readable <code>npm ls</code> output in npm v8.</p>
<p>When running <code>npm outdated</code> and <code>npm ls</code>, setting <code>--all</code> will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -213,12 +216,16 @@ upon by the current project.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -226,6 +233,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -240,6 +249,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="depth"><code>depth</code></h4>
<ul>
<li>Default: <code>Infinity</code> if <code>--all</code> is set, otherwise <code>1</code></li>
@@ -248,6 +259,8 @@ of the current working directory.</li>
<p>The depth to go when recursing packages for <code>npm ls</code>.</p>
<p>If not set, <code>npm ls</code> will show only the immediate dependencies of the root
project. If <code>--all</code> is set, then npm will show all dependencies by default.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -262,12 +275,16 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="link"><code>link</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Used with <code>npm ls</code>, limiting output to only those packages that are linked.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock-only"><code>package-lock-only</code></h4>
<ul>
<li>Default: false</li>
@@ -279,6 +296,8 @@ ignoring <code>node_modules</code>.</p>
instead of checking <code>node_modules</code> and downloading dependencies.</p>
<p>For <code>list</code> this means the output will be based on the tree described by the
<code>package-lock.json</code>, rather than the contents of <code>node_modules</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="unicode"><code>unicode</code></h4>
<ul>
<li>Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -287,6 +306,8 @@ as defined by the <code>LC_ALL</code>, <code>LC_CTYPE</code>, or <code>LANG</cod
</ul>
<p>When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -306,6 +327,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -315,6 +338,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-explain.html">npm explain</a></li>
diff --git a/deps/npm/docs/output/commands/npm-org.html b/deps/npm/docs/output/commands/npm-org.html
index b9b976f05f..7bf7228cb9 100644
--- a/deps/npm/docs/output/commands/npm-org.html
+++ b/deps/npm/docs/output/commands/npm-org.html
@@ -176,12 +176,15 @@ listing them, and finding specific ones and their roles.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -191,6 +194,8 @@ listing them, and finding specific ones and their roles.</p>
when publishing or changing package permissions with <code>npm access</code>.</p>
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -202,6 +207,8 @@ password, npm will prompt on the command line for one.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -210,6 +217,8 @@ saving them to your <code>package.json</code>.</li>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../using-npm/orgs.html">using orgs</a></li>
diff --git a/deps/npm/docs/output/commands/npm-outdated.html b/deps/npm/docs/output/commands/npm-outdated.html
index 2584460fe6..8b12971269 100644
--- a/deps/npm/docs/output/commands/npm-outdated.html
+++ b/deps/npm/docs/output/commands/npm-outdated.html
@@ -216,6 +216,7 @@ scratch or running <code>npm update</code> will bring it up to spec.</li>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="all"><code>all</code></h4>
<ul>
<li>Default: false</li>
@@ -224,6 +225,8 @@ scratch or running <code>npm update</code> will bring it up to spec.</li>
<p>When running <code>npm outdated</code> and <code>npm ls</code>, setting <code>--all</code> will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -235,12 +238,16 @@ upon by the current project.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -248,6 +255,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -262,6 +271,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -282,6 +293,8 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-update.html">npm update</a></li>
diff --git a/deps/npm/docs/output/commands/npm-owner.html b/deps/npm/docs/output/commands/npm-owner.html
index e959abfdae..f12e9deb53 100644
--- a/deps/npm/docs/output/commands/npm-owner.html
+++ b/deps/npm/docs/output/commands/npm-owner.html
@@ -171,12 +171,15 @@ on the command line when changing ownership with <code>--otp</code>.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -187,6 +190,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-profile.html">npm profile</a></li>
diff --git a/deps/npm/docs/output/commands/npm-pack.html b/deps/npm/docs/output/commands/npm-pack.html
index a569ff799a..0852c0becb 100644
--- a/deps/npm/docs/output/commands/npm-pack.html
+++ b/deps/npm/docs/output/commands/npm-pack.html
@@ -150,6 +150,7 @@ npm command-line interface
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -161,6 +162,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -172,12 +175,16 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="pack-destination"><code>pack-destination</code></h4>
<ul>
<li>Default: “.”</li>
<li>Type: String</li>
</ul>
<p>Directory in which <code>npm pack</code> will save tarballs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -197,6 +204,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -206,6 +215,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="description">Description</h3>
<p>For anything that’s installable (that is, a package folder, tarball,
tarball url, git url, name@tag, name@version, name, or scoped name), this
diff --git a/deps/npm/docs/output/commands/npm-ping.html b/deps/npm/docs/output/commands/npm-ping.html
index eba2729152..95f3c5968c 100644
--- a/deps/npm/docs/output/commands/npm-ping.html
+++ b/deps/npm/docs/output/commands/npm-ping.html
@@ -159,6 +159,7 @@ If it works it will output something like:</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
@@ -166,6 +167,8 @@ If it works it will output something like:</p>
</ul>
<p>The base URL of the npm registry.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-doctor.html">npm doctor</a></li>
diff --git a/deps/npm/docs/output/commands/npm-pkg.html b/deps/npm/docs/output/commands/npm-pkg.html
index 1f8a86e76e..3adab8936d 100644
--- a/deps/npm/docs/output/commands/npm-pkg.html
+++ b/deps/npm/docs/output/commands/npm-pkg.html
@@ -152,7 +152,7 @@ npm pkg delete &lt;field&gt; [.&lt;subfield&gt; ...]
<h3 id="description">Description</h3>
<p>A command that automates the management of <code>package.json</code> files.
<code>npm pkg</code> provide 3 different sub commands that allow you to modify or retrieve
-values for given object keys in your <code>packge.json</code>.</p>
+values for given object keys in your <code>package.json</code>.</p>
<p>The syntax to retrieve and set fields is a dot separated representation of
the nested object properties to be found within your <code>package.json</code>, it’s the
same notation used in <a href="../commands/npm-view.html"><code>npm view</code></a> to retrieve information
@@ -255,6 +255,7 @@ returned from each of the configured workspaces, e.g:</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="force"><code>force</code></h4>
<ul>
<li>Default: false</li>
@@ -279,6 +280,8 @@ range (including SemVer-major changes).</li>
</ul>
<p>If you don’t have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -290,6 +293,8 @@ recommended that you do not use this option!</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -309,6 +314,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -318,6 +325,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h2 id="see-also">See Also</h2>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-prefix.html b/deps/npm/docs/output/commands/npm-prefix.html
index ff9d3e34ff..63db456817 100644
--- a/deps/npm/docs/output/commands/npm-prefix.html
+++ b/deps/npm/docs/output/commands/npm-prefix.html
@@ -164,6 +164,7 @@ also specified.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -179,6 +180,8 @@ of the current working directory.</li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-root.html">npm root</a></li>
diff --git a/deps/npm/docs/output/commands/npm-profile.html b/deps/npm/docs/output/commands/npm-profile.html
index 0c24fffead..84bbd362f6 100644
--- a/deps/npm/docs/output/commands/npm-profile.html
+++ b/deps/npm/docs/output/commands/npm-profile.html
@@ -215,12 +215,15 @@ dist-tag, or changing access via <code>npm access</code> and <code>npm owner</co
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -232,6 +235,8 @@ dist-tag, or changing access via <code>npm access</code> and <code>npm owner</co
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -239,6 +244,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -249,6 +256,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-adduser.html">npm adduser</a></li>
diff --git a/deps/npm/docs/output/commands/npm-prune.html b/deps/npm/docs/output/commands/npm-prune.html
index 2dcfe0e1ce..cef16bf889 100644
--- a/deps/npm/docs/output/commands/npm-prune.html
+++ b/deps/npm/docs/output/commands/npm-prune.html
@@ -166,6 +166,7 @@ this command can help clean up any resulting garbage.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -180,6 +181,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -191,6 +194,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -202,6 +207,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -221,6 +228,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -230,6 +239,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-uninstall.html">npm uninstall</a></li>
diff --git a/deps/npm/docs/output/commands/npm-publish.html b/deps/npm/docs/output/commands/npm-publish.html
index cff5dade6a..e46684630c 100644
--- a/deps/npm/docs/output/commands/npm-publish.html
+++ b/deps/npm/docs/output/commands/npm-publish.html
@@ -249,6 +249,7 @@ built.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="tag"><code>tag</code></h4>
<ul>
<li>Default: “latest”</li>
@@ -260,6 +261,8 @@ then it will install the specified tag.</p>
command, if no explicit tag is given.</p>
<p>When used by the <code>npm diff</code> command, this is the tag used to fetch the
tarball that will be compared with the local files by default.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="access"><code>access</code></h4>
<ul>
<li>Default: ‘restricted’ for scoped packages, ‘public’ for unscoped packages</li>
@@ -269,6 +272,13 @@ tarball that will be compared with the local files by default.</p>
If you want your scoped package to be publicly viewable (and installable)
set <code>--access=public</code>. The only valid values for <code>access</code> are <code>public</code> and
<code>restricted</code>. Unscoped packages <em>always</em> have an access level of <code>public</code>.</p>
+<p>Note: Using the <code>--access</code> flag on the <code>npm publish</code> command will only set
+the package access level on the initial publish of the package. Any
+subsequent <code>npm publish</code> commands using the <code>--access</code> flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use <code>npm access</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -280,6 +290,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -289,6 +301,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
when publishing or changing package permissions with <code>npm access</code>.</p>
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -308,6 +322,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -317,6 +333,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="http://npm.im/npm-packlist">npm-packlist package</a></li>
diff --git a/deps/npm/docs/output/commands/npm-rebuild.html b/deps/npm/docs/output/commands/npm-rebuild.html
index 44d2101a9e..b446218c19 100644
--- a/deps/npm/docs/output/commands/npm-rebuild.html
+++ b/deps/npm/docs/output/commands/npm-rebuild.html
@@ -161,6 +161,7 @@ will be rebuilt.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -175,6 +176,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -185,6 +188,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -195,6 +200,8 @@ systems.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -214,6 +221,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -223,6 +232,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-repo.html b/deps/npm/docs/output/commands/npm-repo.html
index 2702fa97dd..84d63dbbfe 100644
--- a/deps/npm/docs/output/commands/npm-repo.html
+++ b/deps/npm/docs/output/commands/npm-repo.html
@@ -155,6 +155,7 @@ in the current folder and use the <code>repository</code> property.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="browser"><code>browser</code></h4>
<ul>
<li>Default: OS X: <code>"open"</code>, Windows: <code>"start"</code>, Others: <code>"xdg-open"</code></li>
@@ -164,6 +165,8 @@ in the current folder and use the <code>repository</code> property.</p>
<p>Set to <code>false</code> to suppress browser behavior and instead print urls to
terminal.</p>
<p>Set to <code>true</code> to use default system URL opener.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -183,6 +186,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -192,6 +197,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-docs.html">npm docs</a></li>
diff --git a/deps/npm/docs/output/commands/npm-restart.html b/deps/npm/docs/output/commands/npm-restart.html
index e7e2729edb..bebf3aa891 100644
--- a/deps/npm/docs/output/commands/npm-restart.html
+++ b/deps/npm/docs/output/commands/npm-restart.html
@@ -171,6 +171,7 @@ npm command-line interface
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -181,6 +182,8 @@ npm command-line interface
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -188,6 +191,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-run-script.html">npm run-script</a></li>
diff --git a/deps/npm/docs/output/commands/npm-root.html b/deps/npm/docs/output/commands/npm-root.html
index c56b042d9e..57d40a3a05 100644
--- a/deps/npm/docs/output/commands/npm-root.html
+++ b/deps/npm/docs/output/commands/npm-root.html
@@ -158,6 +158,7 @@ echo "Global packages installed in: ${global_node_modules}"
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -173,6 +174,8 @@ of the current working directory.</li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-prefix.html">npm prefix</a></li>
diff --git a/deps/npm/docs/output/commands/npm-run-script.html b/deps/npm/docs/output/commands/npm-run-script.html
index cbae66c280..d99ea0ec01 100644
--- a/deps/npm/docs/output/commands/npm-run-script.html
+++ b/deps/npm/docs/output/commands/npm-run-script.html
@@ -236,6 +236,7 @@ packages.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -255,6 +256,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -263,6 +266,8 @@ brand new workspace within the project.</p>
<p>Enable running a command in the context of <strong>all</strong> the configured
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="if-present"><code>if-present</code></h4>
<ul>
<li>Default: false</li>
@@ -274,6 +279,8 @@ This option can be used when it’s desirable to optionally run a script when
it’s present and fail if the script fails. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -284,6 +291,8 @@ CI setup.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -291,6 +300,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../using-npm/scripts.html">npm scripts</a></li>
diff --git a/deps/npm/docs/output/commands/npm-search.html b/deps/npm/docs/output/commands/npm-search.html
index 634229987f..00b77dd612 100644
--- a/deps/npm/docs/output/commands/npm-search.html
+++ b/deps/npm/docs/output/commands/npm-search.html
@@ -171,12 +171,15 @@ expression characters in most shells.)</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -188,6 +191,8 @@ expression characters in most shells.)</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="color"><code>color</code></h4>
<ul>
<li>Default: true unless the NO_COLOR environ is set to something other than ‘0’</li>
@@ -195,6 +200,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>If false, never shows colors. If <code>"always"</code> then always shows colors. If
true, then only prints color codes for tty file descriptors.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -202,30 +209,40 @@ true, then only prints color codes for tty file descriptors.</p>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="description2"><code>description</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Show the description in <code>npm search</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchopts"><code>searchopts</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>Space-separated options that are always passed to search.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchexclude"><code>searchexclude</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>Space-separated options that limit the results from search.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="prefer-online"><code>prefer-online</code></h4>
<ul>
<li>Default: false</li>
@@ -233,6 +250,8 @@ true, then only prints color codes for tty file descriptors.</p>
</ul>
<p>If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="prefer-offline"><code>prefer-offline</code></h4>
<ul>
<li>Default: false</li>
@@ -241,6 +260,8 @@ look for updates immediately even for fresh package data.</p>
<p>If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use
<code>--offline</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="offline"><code>offline</code></h4>
<ul>
<li>Default: false</li>
@@ -249,6 +270,8 @@ will be requested from the server. To force full offline mode, use
<p>Force offline mode: no network requests will be done during install. To
allow the CLI to fill in missing cache data, see <code>--prefer-offline</code>.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../using-npm/registry.html">npm registry</a></li>
diff --git a/deps/npm/docs/output/commands/npm-set-script.html b/deps/npm/docs/output/commands/npm-set-script.html
index 1de9ec1f6a..a0bf20fd17 100644
--- a/deps/npm/docs/output/commands/npm-set-script.html
+++ b/deps/npm/docs/output/commands/npm-set-script.html
@@ -163,6 +163,7 @@ npm command-line interface
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -182,6 +183,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -191,6 +194,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-run-script.html">npm run-script</a></li>
diff --git a/deps/npm/docs/output/commands/npm-star.html b/deps/npm/docs/output/commands/npm-star.html
index 5e5825a3b7..8b41c7d583 100644
--- a/deps/npm/docs/output/commands/npm-star.html
+++ b/deps/npm/docs/output/commands/npm-star.html
@@ -162,12 +162,15 @@ a vaguely positive way to show that you care.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="unicode"><code>unicode</code></h4>
<ul>
<li>Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -177,6 +180,8 @@ as defined by the <code>LC_ALL</code>, <code>LC_CTYPE</code>, or <code>LANG</cod
<p>When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-unstar.html">npm unstar</a></li>
diff --git a/deps/npm/docs/output/commands/npm-stars.html b/deps/npm/docs/output/commands/npm-stars.html
index 64d306b23a..8603cbd45a 100644
--- a/deps/npm/docs/output/commands/npm-stars.html
+++ b/deps/npm/docs/output/commands/npm-stars.html
@@ -156,6 +156,7 @@ you will most certainly enjoy this command.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
@@ -163,6 +164,8 @@ you will most certainly enjoy this command.</p>
</ul>
<p>The base URL of the npm registry.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-star.html">npm star</a></li>
diff --git a/deps/npm/docs/output/commands/npm-start.html b/deps/npm/docs/output/commands/npm-start.html
index 4d0cc57a5b..2ba0468943 100644
--- a/deps/npm/docs/output/commands/npm-start.html
+++ b/deps/npm/docs/output/commands/npm-start.html
@@ -175,6 +175,7 @@ use custom arguments when executing scripts. Refer to <a href="../commands/npm-r
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -185,6 +186,8 @@ use custom arguments when executing scripts. Refer to <a href="../commands/npm-r
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -192,6 +195,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-run-script.html">npm run-script</a></li>
diff --git a/deps/npm/docs/output/commands/npm-stop.html b/deps/npm/docs/output/commands/npm-stop.html
index b821cb27ca..dc2b689579 100644
--- a/deps/npm/docs/output/commands/npm-stop.html
+++ b/deps/npm/docs/output/commands/npm-stop.html
@@ -170,6 +170,7 @@ that will run if the <code>"stop"</code> property is not defined.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -180,6 +181,8 @@ that will run if the <code>"stop"</code> property is not defined.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -187,6 +190,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-run-script.html">npm run-script</a></li>
diff --git a/deps/npm/docs/output/commands/npm-team.html b/deps/npm/docs/output/commands/npm-team.html
index 3e0d06db22..cc08477379 100644
--- a/deps/npm/docs/output/commands/npm-team.html
+++ b/deps/npm/docs/output/commands/npm-team.html
@@ -219,12 +219,15 @@ use the <code>npm access</code> command to grant or revoke the appropriate permi
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -234,6 +237,8 @@ use the <code>npm access</code> command to grant or revoke the appropriate permi
when publishing or changing package permissions with <code>npm access</code>.</p>
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -241,6 +246,8 @@ password, npm will prompt on the command line for one.</p>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -253,6 +260,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-access.html">npm access</a></li>
diff --git a/deps/npm/docs/output/commands/npm-test.html b/deps/npm/docs/output/commands/npm-test.html
index e2d0f39bc3..9d0590fc30 100644
--- a/deps/npm/docs/output/commands/npm-test.html
+++ b/deps/npm/docs/output/commands/npm-test.html
@@ -168,6 +168,7 @@ a package’s <code>"scripts"</code> object.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -178,6 +179,8 @@ a package’s <code>"scripts"</code> object.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
@@ -185,6 +188,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-run-script.html">npm run-script</a></li>
diff --git a/deps/npm/docs/output/commands/npm-token.html b/deps/npm/docs/output/commands/npm-token.html
index eb50983150..57842ff50a 100644
--- a/deps/npm/docs/output/commands/npm-token.html
+++ b/deps/npm/docs/output/commands/npm-token.html
@@ -212,6 +212,7 @@ found in the normal <code>npm token list</code> output.</li>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="read-only"><code>read-only</code></h4>
<ul>
<li>Default: false</li>
@@ -219,6 +220,8 @@ found in the normal <code>npm token list</code> output.</li>
</ul>
<p>This is used to mark a token as unable to publish when configuring limited
access tokens with the <code>npm token create</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cidr"><code>cidr</code></h4>
<ul>
<li>Default: null</li>
@@ -226,12 +229,16 @@ access tokens with the <code>npm token create</code> command.</p>
</ul>
<p>This is a list of CIDR address to be used when configuring limited access
tokens with the <code>npm token create</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -242,6 +249,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-adduser.html">npm adduser</a></li>
diff --git a/deps/npm/docs/output/commands/npm-uninstall.html b/deps/npm/docs/output/commands/npm-uninstall.html
index 0fd8a52b28..be2c7b53c7 100644
--- a/deps/npm/docs/output/commands/npm-uninstall.html
+++ b/deps/npm/docs/output/commands/npm-uninstall.html
@@ -179,6 +179,7 @@ it uninstalls the current package context as a global package.
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save"><code>save</code></h4>
<ul>
<li>Default: true</li>
@@ -187,6 +188,8 @@ it uninstalls the current package context as a global package.
<p>Save installed packages to a package.json file as dependencies.</p>
<p>When used with the <code>npm rm</code> command, removes the dependency from
package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -206,6 +209,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -215,6 +220,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-prune.html">npm prune</a></li>
diff --git a/deps/npm/docs/output/commands/npm-unpublish.html b/deps/npm/docs/output/commands/npm-unpublish.html
index 3d330e9db5..80748d9867 100644
--- a/deps/npm/docs/output/commands/npm-unpublish.html
+++ b/deps/npm/docs/output/commands/npm-unpublish.html
@@ -171,6 +171,7 @@ passed.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -182,6 +183,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="force"><code>force</code></h4>
<ul>
<li>Default: false</li>
@@ -206,6 +209,8 @@ range (including SemVer-major changes).</li>
</ul>
<p>If you don’t have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -225,6 +230,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -234,6 +241,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-deprecate.html">npm deprecate</a></li>
diff --git a/deps/npm/docs/output/commands/npm-unstar.html b/deps/npm/docs/output/commands/npm-unstar.html
index 85b41d7792..15b7821743 100644
--- a/deps/npm/docs/output/commands/npm-unstar.html
+++ b/deps/npm/docs/output/commands/npm-unstar.html
@@ -160,12 +160,15 @@ it removes an item from your list of favorite packages.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="unicode"><code>unicode</code></h4>
<ul>
<li>Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -174,6 +177,8 @@ as defined by the <code>LC_ALL</code>, <code>LC_CTYPE</code>, or <code>LANG</cod
</ul>
<p>When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -184,6 +189,8 @@ when publishing or changing package permissions with <code>npm access</code>.</p
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-star.html">npm star</a></li>
diff --git a/deps/npm/docs/output/commands/npm-update.html b/deps/npm/docs/output/commands/npm-update.html
index f2491347ae..b24f881281 100644
--- a/deps/npm/docs/output/commands/npm-update.html
+++ b/deps/npm/docs/output/commands/npm-update.html
@@ -247,6 +247,7 @@ be <em>downgraded</em>.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -261,6 +262,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -272,6 +275,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -281,6 +286,8 @@ will be preferred.</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -297,6 +304,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -307,6 +316,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -321,6 +332,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -331,6 +344,8 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -340,6 +355,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -350,6 +367,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -357,6 +376,8 @@ systems.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -368,6 +389,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -387,6 +410,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -396,6 +421,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-install.html">npm install</a></li>
diff --git a/deps/npm/docs/output/commands/npm-version.html b/deps/npm/docs/output/commands/npm-version.html
index c81569608d..8afab365cc 100644
--- a/deps/npm/docs/output/commands/npm-version.html
+++ b/deps/npm/docs/output/commands/npm-version.html
@@ -154,6 +154,7 @@ npm command-line interface
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="allow-same-version"><code>allow-same-version</code></h4>
<ul>
<li>Default: false</li>
@@ -161,18 +162,24 @@ npm command-line interface
</ul>
<p>Prevents throwing an error when <code>npm version</code> is used to set the new version
to the same value as the current version.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="commit-hooks"><code>commit-hooks</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Run git commit hooks when using the <code>npm version</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="git-tag-version"><code>git-tag-version</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Tag the commit when using the <code>npm version</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -184,6 +191,8 @@ to the same value as the current version.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="preid"><code>preid</code></h4>
<ul>
<li>Default: “”</li>
@@ -191,6 +200,8 @@ saving them to your <code>package.json</code>.</li>
</ul>
<p>The “prerelease identifier” to use as a prefix for the “prerelease” part of
a semver. Like the <code>rc</code> in <code>1.2.0-rc.8</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="sign-git-tag"><code>sign-git-tag</code></h4>
<ul>
<li>Default: false</li>
@@ -200,6 +211,8 @@ a semver. Like the <code>rc</code> in <code>1.2.0-rc.8</code>.</p>
<code>-s</code> to add a signature.</p>
<p>Note that git requires you to have set up GPG keys in your git configs for
this to work properly.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -219,6 +232,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -228,6 +243,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="description">Description</h3>
<p>Run this in a package directory to bump the version and write the new data
back to <code>package.json</code>, <code>package-lock.json</code>, and, if present,
diff --git a/deps/npm/docs/output/commands/npm-view.html b/deps/npm/docs/output/commands/npm-view.html
index 1a0eba4c14..25dd5e6b97 100644
--- a/deps/npm/docs/output/commands/npm-view.html
+++ b/deps/npm/docs/output/commands/npm-view.html
@@ -201,6 +201,7 @@ this:</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -212,6 +213,8 @@ this:</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -231,6 +234,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -240,6 +245,8 @@ brand new workspace within the project.</p>
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="output">Output</h3>
<p>If only a single string field for a single version is output, then it
will not be colorized or quoted, to enable piping the output to
diff --git a/deps/npm/docs/output/commands/npm-whoami.html b/deps/npm/docs/output/commands/npm-whoami.html
index 2b98709d10..7850627325 100644
--- a/deps/npm/docs/output/commands/npm-whoami.html
+++ b/deps/npm/docs/output/commands/npm-whoami.html
@@ -158,6 +158,7 @@ associated with the token, and print to standard output.</p>
<h3 id="configuration">Configuration</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
@@ -165,6 +166,8 @@ associated with the token, and print to standard output.</p>
</ul>
<p>The base URL of the npm registry.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See Also</h3>
<ul>
<li><a href="../commands/npm-config.html">npm config</a></li>
diff --git a/deps/npm/docs/output/commands/npm.html b/deps/npm/docs/output/commands/npm.html
index e1d14fae55..cb00df323d 100644
--- a/deps/npm/docs/output/commands/npm.html
+++ b/deps/npm/docs/output/commands/npm.html
@@ -148,7 +148,7 @@ npm command-line interface
<pre lang="bash"><code>npm &lt;command&gt; [args]
</code></pre>
<h3 id="version">Version</h3>
-<p>7.20.3</p>
+<p>7.21.0</p>
<h3 id="description">Description</h3>
<p>npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
@@ -161,7 +161,7 @@ programs.</p>
<p>npm comes preconfigured to use npm’s public registry at
<a href="https://registry.npmjs.org">https://registry.npmjs.org</a> by default. Use of the npm public registry is
subject to terms of use available at
-<a href="https://www.npmjs.com/policies/terms">https://www.npmjs.com/policies/terms</a>.</p>
+<a href="https://docs.npmjs.com/policies/terms">https://docs.npmjs.com/policies/terms</a>.</p>
<p>You can configure npm to use any compatible registry you like, and even
run your own registry. Use of someone else’s registry is governed by
their terms of use.</p>
diff --git a/deps/npm/docs/output/configuring-npm/package-json.html b/deps/npm/docs/output/configuring-npm/package-json.html
index f7e5555b57..9c1bb63efe 100644
--- a/deps/npm/docs/output/configuring-npm/package-json.html
+++ b/deps/npm/docs/output/configuring-npm/package-json.html
@@ -358,12 +358,10 @@ through <code>.npmignore</code> or <code>.gitignore</code>.</p>
<ul>
<li><code>package.json</code></li>
<li><code>README</code></li>
-<li><code>CHANGES</code> / <code>CHANGELOG</code> / <code>HISTORY</code></li>
<li><code>LICENSE</code> / <code>LICENCE</code></li>
-<li><code>NOTICE</code></li>
<li>The file in the “main” field</li>
</ul>
-<p><code>README</code>, <code>CHANGES</code>, <code>LICENSE</code> &amp; <code>NOTICE</code> can have any case and extension.</p>
+<p><code>README</code> &amp; <code>LICENSE</code> can have any case and extension.</p>
<p>Conversely, some files are always ignored:</p>
<ul>
<li><code>.git</code></li>
diff --git a/deps/npm/docs/output/using-npm/config.html b/deps/npm/docs/output/using-npm/config.html
index 76a92f5dd1..eb8a7712e5 100644
--- a/deps/npm/docs/output/using-npm/config.html
+++ b/deps/npm/docs/output/using-npm/config.html
@@ -187,6 +187,7 @@ internal to npm, and are defaults if nothing else is specified.</p>
<p>The following shorthands are parsed on the command-line:</p>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<ul>
<li><code>-a</code>: <code>--all</code></li>
<li><code>--enjoy-by</code>: <code>--before</code></li>
@@ -229,6 +230,8 @@ internal to npm, and are defaults if nothing else is specified.</p>
<li><code>-y</code>: <code>--yes</code></li>
</ul>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<p>If the specified configuration param resolves unambiguously to a known
configuration parameter, then it is expanded to that configuration
parameter. For example:</p>
@@ -247,6 +250,7 @@ npm ls --global --parseable --long --loglevel info
<h3 id="config-settings">Config Settings</h3>
<!-- raw HTML omitted -->
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="auth"><code>_auth</code></h4>
<ul>
<li>Default: null</li>
@@ -256,6 +260,8 @@ npm ls --global --parseable --long --loglevel info
<p>Warning: This should generally not be set via a command-line option. It is
safer to use a registry-provided authentication bearer token stored in the
~/.npmrc file by running <code>npm login</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="access"><code>access</code></h4>
<ul>
<li>Default: ‘restricted’ for scoped packages, ‘public’ for unscoped packages</li>
@@ -265,6 +271,13 @@ safer to use a registry-provided authentication bearer token stored in the
If you want your scoped package to be publicly viewable (and installable)
set <code>--access=public</code>. The only valid values for <code>access</code> are <code>public</code> and
<code>restricted</code>. Unscoped packages <em>always</em> have an access level of <code>public</code>.</p>
+<p>Note: Using the <code>--access</code> flag on the <code>npm publish</code> command will only set
+the package access level on the initial publish of the package. Any
+subsequent <code>npm publish</code> commands using the <code>--access</code> flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use <code>npm access</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="all"><code>all</code></h4>
<ul>
<li>Default: false</li>
@@ -273,6 +286,8 @@ set <code>--access=public</code>. The only valid values for <code>access</code>
<p>When running <code>npm outdated</code> and <code>npm ls</code>, setting <code>--all</code> will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="allow-same-version"><code>allow-same-version</code></h4>
<ul>
<li>Default: false</li>
@@ -280,6 +295,8 @@ upon by the current project.</p>
</ul>
<p>Prevents throwing an error when <code>npm version</code> is used to set the new version
to the same value as the current version.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit"><code>audit</code></h4>
<ul>
<li>Default: true</li>
@@ -289,6 +306,8 @@ to the same value as the current version.</p>
default registry and all registries configured for scopes. See the
documentation for <a href="../commands/npm-audit.html"><code>npm audit</code></a> for details on what is
submitted.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="audit-level"><code>audit-level</code></h4>
<ul>
<li>Default: null</li>
@@ -296,6 +315,8 @@ submitted.</p>
</ul>
<p>The minimum level of vulnerability for <code>npm audit</code> to exit with a non-zero
exit code.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="before"><code>before</code></h4>
<ul>
<li>Default: null</li>
@@ -309,6 +330,8 @@ dependencies, the command will error.</p>
<code>--before</code> filter, the most recent version less than or equal to that tag
will be used. For example, <code>foo@latest</code> might install <code>foo@1.2</code> even though
<code>latest</code> is <code>2.0</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="bin-links"><code>bin-links</code></h4>
<ul>
<li>Default: true</li>
@@ -319,6 +342,8 @@ executables.</p>
<p>Set to false to have it not do this. This can be used to work around the
fact that some file systems don’t support symlinks, even on ostensibly Unix
systems.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="browser"><code>browser</code></h4>
<ul>
<li>Default: OS X: <code>"open"</code>, Windows: <code>"start"</code>, Others: <code>"xdg-open"</code></li>
@@ -328,6 +353,8 @@ systems.</p>
<p>Set to <code>false</code> to suppress browser behavior and instead print urls to
terminal.</p>
<p>Set to <code>true</code> to use default system URL opener.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ca"><code>ca</code></h4>
<ul>
<li>Default: null</li>
@@ -346,12 +373,16 @@ trust only that specific signing authority.</p>
ca[]="..."
</code></pre>
<p>See also the <code>strict-ssl</code> config.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cache"><code>cache</code></h4>
<ul>
<li>Default: Windows: <code>%LocalAppData%\npm-cache</code>, Posix: <code>~/.npm</code></li>
<li>Type: Path</li>
</ul>
<p>The location of npm’s cache directory. See <a href="../commands/npm-cache.html"><code>npm cache</code></a></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cafile"><code>cafile</code></h4>
<ul>
<li>Default: null</li>
@@ -360,6 +391,8 @@ ca[]="..."
<p>A path to a file containing one or multiple Certificate Authority signing
certificates. Similar to the <code>ca</code> setting, but allows for multiple CA’s, as
well as for the CA information to be stored in a file on disk.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="call"><code>call</code></h4>
<ul>
<li>Default: “”</li>
@@ -369,6 +402,8 @@ well as for the CA information to be stored in a file on disk.</p>
custom command to be run along with the installed packages.</p>
<pre lang="bash"><code>npm exec --package yo --package generator-node --call "yo node"
</code></pre>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cert"><code>cert</code></h4>
<ul>
<li>Default: null</li>
@@ -381,6 +416,8 @@ newlines replaced by the string “\n”. For example:</p>
</code></pre>
<p>It is <em>not</em> the path to a certificate file (and there is no “certfile”
option).</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ci-name"><code>ci-name</code></h4>
<ul>
<li>Default: The name of the current CI system, or <code>null</code> when not on a known CI
@@ -390,6 +427,8 @@ platform.</li>
<p>The name of a continuous integration system. If not set explicitly, npm will
detect the current CI environment using the
<a href="http://npm.im/@npmcli/ci-detect"><code>@npmcli/ci-detect</code></a> module.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cidr"><code>cidr</code></h4>
<ul>
<li>Default: null</li>
@@ -397,6 +436,8 @@ detect the current CI environment using the
</ul>
<p>This is a list of CIDR address to be used when configuring limited access
tokens with the <code>npm token create</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="color"><code>color</code></h4>
<ul>
<li>Default: true unless the NO_COLOR environ is set to something other than ‘0’</li>
@@ -404,12 +445,16 @@ tokens with the <code>npm token create</code> command.</p>
</ul>
<p>If false, never shows colors. If <code>"always"</code> then always shows colors. If
true, then only prints color codes for tty file descriptors.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="commit-hooks"><code>commit-hooks</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Run git commit hooks when using the <code>npm version</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="depth"><code>depth</code></h4>
<ul>
<li>Default: <code>Infinity</code> if <code>--all</code> is set, otherwise <code>1</code></li>
@@ -418,36 +463,48 @@ true, then only prints color codes for tty file descriptors.</p>
<p>The depth to go when recursing packages for <code>npm ls</code>.</p>
<p>If not set, <code>npm ls</code> will show only the immediate dependencies of the root
project. If <code>--all</code> is set, then npm will show all dependencies by default.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="description2"><code>description</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Show the description in <code>npm search</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff"><code>diff</code></h4>
<ul>
<li>Default:</li>
<li>Type: String (can be set multiple times)</li>
</ul>
<p>Define arguments to compare in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-dst-prefix"><code>diff-dst-prefix</code></h4>
<ul>
<li>Default: “b/”</li>
<li>Type: String</li>
</ul>
<p>Destination prefix to be used in <code>npm diff</code> output.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-ignore-all-space"><code>diff-ignore-all-space</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Ignore whitespace when comparing lines in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-name-only"><code>diff-name-only</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Prints only filenames when using <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-no-prefix"><code>diff-no-prefix</code></h4>
<ul>
<li>Default: false</li>
@@ -456,24 +513,32 @@ project. If <code>--all</code> is set, then npm will show all dependencies by de
<p>Do not show any source or destination prefix in <code>npm diff</code> output.</p>
<p>Note: this causes <code>npm diff</code> to ignore the <code>--diff-src-prefix</code> and
<code>--diff-dst-prefix</code> configs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-src-prefix"><code>diff-src-prefix</code></h4>
<ul>
<li>Default: “a/”</li>
<li>Type: String</li>
</ul>
<p>Source prefix to be used in <code>npm diff</code> output.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-text"><code>diff-text</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Treat all files as text in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="diff-unified"><code>diff-unified</code></h4>
<ul>
<li>Default: 3</li>
<li>Type: Number</li>
</ul>
<p>The number of lines of context to print in <code>npm diff</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dry-run"><code>dry-run</code></h4>
<ul>
<li>Default: false</li>
@@ -485,6 +550,8 @@ commands that modify your local installation, eg, <code>install</code>, <code>up
<code>dedupe</code>, <code>uninstall</code>, as well as <code>pack</code> and <code>publish</code>.</p>
<p>Note: This is NOT honored by other network related commands, eg <code>dist-tags</code>,
<code>owner</code>, etc.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="editor"><code>editor</code></h4>
<ul>
<li>Default: The EDITOR or VISUAL environment variables, or ‘notepad.exe’ on
@@ -492,6 +559,8 @@ Windows, or ‘vim’ on Unix systems</li>
<li>Type: String</li>
</ul>
<p>The command to run for <code>npm edit</code> and <code>npm config edit</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="engine-strict"><code>engine-strict</code></h4>
<ul>
<li>Default: false</li>
@@ -501,6 +570,8 @@ Windows, or ‘vim’ on Unix systems</li>
installing) any package that claims to not be compatible with the current
Node.js version.</p>
<p>This can be overridden by setting the <code>--force</code> flag.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fetch-retries"><code>fetch-retries</code></h4>
<ul>
<li>Default: 2</li>
@@ -510,12 +581,16 @@ Node.js version.</p>
from the registry.</p>
<p>npm will retry idempotent read requests to the registry in the case of
network failures or 5xx HTTP errors.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fetch-retry-factor"><code>fetch-retry-factor</code></h4>
<ul>
<li>Default: 10</li>
<li>Type: Number</li>
</ul>
<p>The “factor” config for the <code>retry</code> module to use when fetching packages.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fetch-retry-maxtimeout"><code>fetch-retry-maxtimeout</code></h4>
<ul>
<li>Default: 60000 (1 minute)</li>
@@ -523,6 +598,8 @@ network failures or 5xx HTTP errors.</p>
</ul>
<p>The “maxTimeout” config for the <code>retry</code> module to use when fetching
packages.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fetch-retry-mintimeout"><code>fetch-retry-mintimeout</code></h4>
<ul>
<li>Default: 10000 (10 seconds)</li>
@@ -530,12 +607,16 @@ packages.</p>
</ul>
<p>The “minTimeout” config for the <code>retry</code> module to use when fetching
packages.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fetch-timeout"><code>fetch-timeout</code></h4>
<ul>
<li>Default: 300000 (5 minutes)</li>
<li>Type: Number</li>
</ul>
<p>The maximum amount of time to wait for HTTP requests to complete.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="force"><code>force</code></h4>
<ul>
<li>Default: false</li>
@@ -560,6 +641,8 @@ range (including SemVer-major changes).</li>
</ul>
<p>If you don’t have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="foreground-scripts"><code>foreground-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -570,6 +653,8 @@ scripts for installed packages in the foreground process, sharing standard
input, output, and error with the main npm process.</p>
<p>Note that this will generally make installs run slower, and be much noisier,
but can be useful for debugging.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="format-package-lock"><code>format-package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -577,6 +662,8 @@ but can be useful for debugging.</p>
</ul>
<p>Format <code>package-lock.json</code> or <code>npm-shrinkwrap.json</code> as a human readable
file.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="fund"><code>fund</code></h4>
<ul>
<li>Default: true</li>
@@ -584,6 +671,8 @@ file.</p>
</ul>
<p>When “true” displays the message at the end of each <code>npm install</code>
acknowledging the number of dependencies looking for funding. See <a href="../commands/npm-fund.html"><code>npm fund</code></a> for details.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="git"><code>git</code></h4>
<ul>
<li>Default: “git”</li>
@@ -591,12 +680,16 @@ acknowledging the number of dependencies looking for funding. See <a href="../co
</ul>
<p>The command to use for git commands. If git is installed on the computer,
but is not in the <code>PATH</code>, then set this to the full path to the git binary.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="git-tag-version"><code>git-tag-version</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Tag the commit when using the <code>npm version</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global"><code>global</code></h4>
<ul>
<li>Default: false</li>
@@ -611,6 +704,8 @@ of the current working directory.</li>
<li>bin files are linked to <code>{prefix}/bin</code></li>
<li>man pages are linked to <code>{prefix}/share/man</code></li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="global-style"><code>global-style</code></h4>
<ul>
<li>Default: false</li>
@@ -622,6 +717,8 @@ direct dependencies will show in <code>node_modules</code> and everything they d
on will be flattened in their <code>node_modules</code> folders. This obviously will
eliminate some deduping. If used with <code>legacy-bundling</code>, <code>legacy-bundling</code>
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="globalconfig"><code>globalconfig</code></h4>
<ul>
<li>Default: The global –prefix setting plus ‘etc/npmrc’. For example,
@@ -629,12 +726,16 @@ will be preferred.</p>
<li>Type: Path</li>
</ul>
<p>The config file to read for global config options.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="heading"><code>heading</code></h4>
<ul>
<li>Default: “npm”</li>
<li>Type: String</li>
</ul>
<p>The string that starts all the debugging log output.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="https-proxy"><code>https-proxy</code></h4>
<ul>
<li>Default: null</li>
@@ -644,6 +745,8 @@ will be preferred.</p>
<code>https_proxy</code> or <code>HTTP_PROXY</code> or <code>http_proxy</code> environment variables are set,
proxy settings will be honored by the underlying <code>make-fetch-happen</code>
library.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="if-present"><code>if-present</code></h4>
<ul>
<li>Default: false</li>
@@ -655,6 +758,8 @@ This option can be used when it’s desirable to optionally run a script when
it’s present and fail if the script fails. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="ignore-scripts"><code>ignore-scripts</code></h4>
<ul>
<li>Default: false</li>
@@ -665,6 +770,8 @@ CI setup.</p>
<code>npm start</code>, <code>npm stop</code>, <code>npm restart</code>, <code>npm test</code>, and <code>npm run-script</code>
will still run their intended script if <code>ignore-scripts</code> is set, but they
will <em>not</em> run any pre- or post-scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="include"><code>include</code></h4>
<ul>
<li>Default:</li>
@@ -674,6 +781,8 @@ will <em>not</em> run any pre- or post-scripts.</p>
<p>This is the inverse of <code>--omit=&lt;type&gt;</code>.</p>
<p>Dependency types specified in <code>--include</code> will not be omitted, regardless of
the order in which omit/include are specified on the command-line.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="include-staged"><code>include-staged</code></h4>
<ul>
<li>Default: false</li>
@@ -682,18 +791,24 @@ the order in which omit/include are specified on the command-line.</p>
<p>Allow installing “staged” published packages, as defined by <a href="https://github.com/npm/rfcs/pull/92">npm RFC PR
#92</a>.</p>
<p>This is experimental, and not implemented by the npm public registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-author-email"><code>init-author-email</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>The value <code>npm init</code> should use by default for the package author’s email.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-author-name"><code>init-author-name</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>The value <code>npm init</code> should use by default for the package author’s name.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-author-url"><code>init-author-url</code></h4>
<ul>
<li>Default: “”</li>
@@ -701,12 +816,16 @@ the order in which omit/include are specified on the command-line.</p>
</ul>
<p>The value <code>npm init</code> should use by default for the package author’s
homepage.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-license"><code>init-license</code></h4>
<ul>
<li>Default: “ISC”</li>
<li>Type: String</li>
</ul>
<p>The value <code>npm init</code> should use by default for the package license.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-module"><code>init-module</code></h4>
<ul>
<li>Default: “~/.npm-init.js”</li>
@@ -716,6 +835,8 @@ homepage.</p>
documentation for the
<a href="https://github.com/npm/init-package-json">init-package-json</a> module for
more information, or <a href="../commands/npm-init.html">npm init</a>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="init-version"><code>init-version</code></h4>
<ul>
<li>Default: “1.0.0”</li>
@@ -723,6 +844,8 @@ more information, or <a href="../commands/npm-init.html">npm init</a>.</p>
</ul>
<p>The value that <code>npm init</code> should use by default for the package version
number, if not already set in package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="json"><code>json</code></h4>
<ul>
<li>Default: false</li>
@@ -734,6 +857,8 @@ number, if not already set in package.json.</p>
saving them to your <code>package.json</code>.</li>
</ul>
<p>Not supported by all npm commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="key"><code>key</code></h4>
<ul>
<li>Default: null</li>
@@ -744,6 +869,8 @@ format with newlines replaced by the string “\n”. For example:</p>
<pre lang="ini"><code>key="-----BEGIN PRIVATE KEY-----\nXXXX\nXXXX\n-----END PRIVATE KEY-----"
</code></pre>
<p>It is <em>not</em> the path to a key file (and there is no “keyfile” option).</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-bundling"><code>legacy-bundling</code></h4>
<ul>
<li>Default: false</li>
@@ -753,6 +880,8 @@ format with newlines replaced by the string “\n”. For example:</p>
such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with <code>global-style</code> this option
will be preferred.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="legacy-peer-deps"><code>legacy-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -767,12 +896,16 @@ that collide, it provides a way to move forward resolving the situation.</p>
<code>peerDependencies</code> <em>could</em> be unpacked in a correct place.</p>
<p>Use of <code>legacy-peer-deps</code> is not recommended, as it will not enforce the
<code>peerDependencies</code> contract that meta-dependencies may rely on.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="link"><code>link</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Used with <code>npm ls</code>, limiting output to only those packages that are linked.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="local-address"><code>local-address</code></h4>
<ul>
<li>Default: null</li>
@@ -780,6 +913,8 @@ that collide, it provides a way to move forward resolving the situation.</p>
</ul>
<p>The IP address of the local interface to use when making connections to the
npm registry. Must be IPv4 in versions of Node prior to 0.12.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="location"><code>location</code></h4>
<ul>
<li>Default: “user” unless <code>--global</code> is passed, which will also set this value
@@ -787,6 +922,8 @@ to “global”</li>
<li>Type: “global”, “user”, or “project”</li>
</ul>
<p>When passed to <code>npm config</code> this refers to which config file to use.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="loglevel"><code>loglevel</code></h4>
<ul>
<li>Default: “notice”</li>
@@ -798,18 +935,24 @@ to “global”</li>
<p>Any logs of a higher level than the setting are shown. The default is
“notice”.</p>
<p>See also the <code>foreground-scripts</code> config.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="logs-max"><code>logs-max</code></h4>
<ul>
<li>Default: 10</li>
<li>Type: Number</li>
</ul>
<p>The maximum number of log files to store.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="long"><code>long</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Show extended information in <code>ls</code>, <code>search</code>, and <code>help-search</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="maxsockets"><code>maxsockets</code></h4>
<ul>
<li>Default: 15</li>
@@ -817,6 +960,8 @@ to “global”</li>
</ul>
<p>The maximum number of connections to use per origin (protocol/host/port
combination).</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="message"><code>message</code></h4>
<ul>
<li>Default: “%s”</li>
@@ -824,6 +969,8 @@ combination).</p>
</ul>
<p>Commit message which is used by <code>npm version</code> when creating version commit.</p>
<p>Any “%s” in the message will be replaced with the version number.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="node-options"><code>node-options</code></h4>
<ul>
<li>Default: null</li>
@@ -832,12 +979,16 @@ combination).</p>
<p>Options to pass through to Node.js via the <code>NODE_OPTIONS</code> environment
variable. This does not impact how npm itself is executed but it does impact
how lifecycle scripts are called.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="node-version"><code>node-version</code></h4>
<ul>
<li>Default: Node.js <code>process.version</code> value</li>
<li>Type: SemVer string</li>
</ul>
<p>The node version to use when checking a package’s <code>engines</code> setting.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="noproxy"><code>noproxy</code></h4>
<ul>
<li>Default: The value of the NO_PROXY environment variable</li>
@@ -845,12 +996,16 @@ how lifecycle scripts are called.</p>
</ul>
<p>Domain extensions that should bypass any proxies.</p>
<p>Also accepts a comma-delimited string.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="npm-version"><code>npm-version</code></h4>
<ul>
<li>Default: Output of <code>npm --version</code></li>
<li>Type: SemVer string</li>
</ul>
<p>The npm version to use when checking a package’s <code>engines</code> setting.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="offline"><code>offline</code></h4>
<ul>
<li>Default: false</li>
@@ -858,6 +1013,8 @@ how lifecycle scripts are called.</p>
</ul>
<p>Force offline mode: no network requests will be done during install. To
allow the CLI to fill in missing cache data, see <code>--prefer-offline</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="omit"><code>omit</code></h4>
<ul>
<li>Default: ‘dev’ if the <code>NODE_ENV</code> environment variable is set to
@@ -872,6 +1029,8 @@ physically installed on disk.</p>
it will be included.</p>
<p>If the resulting omit list includes <code>'dev'</code>, then the <code>NODE_ENV</code> environment
variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="otp"><code>otp</code></h4>
<ul>
<li>Default: null</li>
@@ -881,18 +1040,24 @@ variable will be set to <code>'production'</code> for all lifecycle scripts.</p>
when publishing or changing package permissions with <code>npm access</code>.</p>
<p>If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="pack-destination"><code>pack-destination</code></h4>
<ul>
<li>Default: “.”</li>
<li>Type: String</li>
</ul>
<p>Directory in which <code>npm pack</code> will save tarballs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package"><code>package</code></h4>
<ul>
<li>Default:</li>
<li>Type: String (can be set multiple times)</li>
</ul>
<p>The package to install for <a href="../commands/npm-exec.html"><code>npm exec</code></a></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock"><code>package-lock</code></h4>
<ul>
<li>Default: true</li>
@@ -903,6 +1068,8 @@ will also prevent <em>writing</em> <code>package-lock.json</code> if <code>save<
<p>When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use <code>npm prune</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="package-lock-only"><code>package-lock-only</code></h4>
<ul>
<li>Default: false</li>
@@ -914,6 +1081,8 @@ ignoring <code>node_modules</code>.</p>
instead of checking <code>node_modules</code> and downloading dependencies.</p>
<p>For <code>list</code> this means the output will be based on the tree described by the
<code>package-lock.json</code>, rather than the contents of <code>node_modules</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="parseable"><code>parseable</code></h4>
<ul>
<li>Default: false</li>
@@ -921,6 +1090,8 @@ instead of checking <code>node_modules</code> and downloading dependencies.</p>
</ul>
<p>Output parseable results from commands that write to standard output. For
<code>npm search</code>, this will be tab-separated table format.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="prefer-offline"><code>prefer-offline</code></h4>
<ul>
<li>Default: false</li>
@@ -929,6 +1100,8 @@ instead of checking <code>node_modules</code> and downloading dependencies.</p>
<p>If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use
<code>--offline</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="prefer-online"><code>prefer-online</code></h4>
<ul>
<li>Default: false</li>
@@ -936,6 +1109,8 @@ will be requested from the server. To force full offline mode, use
</ul>
<p>If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="prefix"><code>prefix</code></h4>
<ul>
<li>Default: In global mode, the folder where the node executable is installed.
@@ -945,6 +1120,8 @@ file or a node_modules folder.</li>
</ul>
<p>The location to install global items. If set on the command line, then it
forces non-global commands to run in the specified folder.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="preid"><code>preid</code></h4>
<ul>
<li>Default: “”</li>
@@ -952,6 +1129,8 @@ forces non-global commands to run in the specified folder.</p>
</ul>
<p>The “prerelease identifier” to use as a prefix for the “prerelease” part of
a semver. Like the <code>rc</code> in <code>1.2.0-rc.8</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="progress"><code>progress</code></h4>
<ul>
<li>Default: <code>true</code> unless running in a known CI system</li>
@@ -960,6 +1139,8 @@ a semver. Like the <code>rc</code> in <code>1.2.0-rc.8</code>.</p>
<p>When set to <code>true</code>, npm will display a progress bar during time intensive
operations, if <code>process.stderr</code> is a TTY.</p>
<p>Set to <code>false</code> to suppress the progress bar.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="proxy"><code>proxy</code></h4>
<ul>
<li>Default: null</li>
@@ -968,6 +1149,8 @@ operations, if <code>process.stderr</code> is a TTY.</p>
<p>A proxy to use for outgoing http requests. If the <code>HTTP_PROXY</code> or
<code>http_proxy</code> environment variables are set, proxy settings will be honored
by the underlying <code>request</code> library.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="read-only"><code>read-only</code></h4>
<ul>
<li>Default: false</li>
@@ -975,18 +1158,24 @@ by the underlying <code>request</code> library.</p>
</ul>
<p>This is used to mark a token as unable to publish when configuring limited
access tokens with the <code>npm token create</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="rebuild-bundle"><code>rebuild-bundle</code></h4>
<ul>
<li>Default: true</li>
<li>Type: Boolean</li>
</ul>
<p>Rebuild bundled dependencies after installation.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="registry"><code>registry</code></h4>
<ul>
<li>Default: “<a href="https://registry.npmjs.org/">https://registry.npmjs.org/</a>”</li>
<li>Type: URL</li>
</ul>
<p>The base URL of the npm registry.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save"><code>save</code></h4>
<ul>
<li>Default: true</li>
@@ -995,6 +1184,8 @@ access tokens with the <code>npm token create</code> command.</p>
<p>Save installed packages to a package.json file as dependencies.</p>
<p>When used with the <code>npm rm</code> command, removes the dependency from
package.json.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-bundle"><code>save-bundle</code></h4>
<ul>
<li>Default: false</li>
@@ -1004,12 +1195,16 @@ package.json.</p>
<code>--save-dev</code>, or <code>--save-optional</code>, then also put it in the
<code>bundleDependencies</code> list.</p>
<p>Ignore if <code>--save-peer</code> is set, since peerDependencies cannot be bundled.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-dev"><code>save-dev</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Save installed packages to a package.json file as <code>devDependencies</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-exact"><code>save-exact</code></h4>
<ul>
<li>Default: false</li>
@@ -1017,18 +1212,24 @@ package.json.</p>
</ul>
<p>Dependencies saved to package.json will be configured with an exact version
rather than using npm’s default semver range operator.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-optional"><code>save-optional</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Save installed packages to a package.json file as <code>optionalDependencies</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-peer"><code>save-peer</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Save installed packages. to a package.json file as <code>peerDependencies</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-prefix"><code>save-prefix</code></h4>
<ul>
<li>Default: “^”</li>
@@ -1039,6 +1240,8 @@ rather than using npm’s default semver range operator.</p>
<p>For example if a package has version <code>1.2.3</code>, by default its version is set
to <code>^1.2.3</code> which allows minor upgrades for that package, but after <code>npm config set save-prefix='~'</code> it would be set to <code>~1.2.3</code> which only allows
patch upgrades.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="save-prod"><code>save-prod</code></h4>
<ul>
<li>Default: false</li>
@@ -1049,6 +1252,8 @@ a package already exists in <code>devDependencies</code> or <code>optionalDepend
you want to move it to be a non-optional production dependency.</p>
<p>This is the default behavior if <code>--save</code> is true, and neither <code>--save-dev</code>
or <code>--save-optional</code> are true.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="scope"><code>scope</code></h4>
<ul>
<li>Default: the scope of the current project, if any, or “”</li>
@@ -1070,18 +1275,24 @@ installation of packages specified according to the pattern
# instead of just named "whatever"
npm init --scope=@foo --yes
</code></pre>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="script-shell"><code>script-shell</code></h4>
<ul>
<li>Default: ‘/bin/sh’ on POSIX systems, ‘cmd.exe’ on Windows</li>
<li>Type: null or String</li>
</ul>
<p>The shell to use for scripts run with the <code>npm exec</code>, <code>npm run</code> and <code>npm init &lt;pkg&gt;</code> commands.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchexclude"><code>searchexclude</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>Space-separated options that limit the results from search.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchlimit"><code>searchlimit</code></h4>
<ul>
<li>Default: 20</li>
@@ -1089,12 +1300,16 @@ npm init --scope=@foo --yes
</ul>
<p>Number of items to limit search results to. Will not apply at all to legacy
searches.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchopts"><code>searchopts</code></h4>
<ul>
<li>Default: “”</li>
<li>Type: String</li>
</ul>
<p>Space-separated options that are always passed to search.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="searchstaleness"><code>searchstaleness</code></h4>
<ul>
<li>Default: 900</li>
@@ -1102,6 +1317,8 @@ searches.</p>
</ul>
<p>The age of the cache, in seconds, before another registry request is made if
using legacy search endpoint.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="shell"><code>shell</code></h4>
<ul>
<li>Default: SHELL environment variable, or “bash” on Posix, or “cmd.exe” on
@@ -1109,6 +1326,8 @@ Windows</li>
<li>Type: String</li>
</ul>
<p>The shell to run for the <code>npm explore</code> command.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="sign-git-commit"><code>sign-git-commit</code></h4>
<ul>
<li>Default: false</li>
@@ -1118,6 +1337,8 @@ Windows</li>
version using <code>-S</code> to add a signature.</p>
<p>Note that git requires you to have set up GPG keys in your git configs for
this to work properly.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="sign-git-tag"><code>sign-git-tag</code></h4>
<ul>
<li>Default: false</li>
@@ -1127,6 +1348,8 @@ this to work properly.</p>
<code>-s</code> to add a signature.</p>
<p>Note that git requires you to have set up GPG keys in your git configs for
this to work properly.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-peer-deps"><code>strict-peer-deps</code></h4>
<ul>
<li>Default: false</li>
@@ -1143,6 +1366,8 @@ the range set in their package’s <code>peerDependencies</code> object.</p>
<p>When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If <code>--strict-peer-deps</code> is set, then
this warning is treated as a failure.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="strict-ssl"><code>strict-ssl</code></h4>
<ul>
<li>Default: true</li>
@@ -1151,6 +1376,8 @@ this warning is treated as a failure.</p>
<p>Whether or not to do SSL key validation when making requests to the registry
via https.</p>
<p>See also the <code>ca</code> config.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="tag"><code>tag</code></h4>
<ul>
<li>Default: “latest”</li>
@@ -1162,6 +1389,8 @@ then it will install the specified tag.</p>
command, if no explicit tag is given.</p>
<p>When used by the <code>npm diff</code> command, this is the tag used to fetch the
tarball that will be compared with the local files by default.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="tag-version-prefix"><code>tag-version-prefix</code></h4>
<ul>
<li>Default: “v”</li>
@@ -1173,6 +1402,8 @@ it to the empty string: <code>""</code>.</p>
<p>Because other tools may rely on the convention that npm version tags look
like <code>v1.0.0</code>, <em>only use this property if it is absolutely necessary</em>. In
particular, use care when overriding this setting for public packages.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="timing"><code>timing</code></h4>
<ul>
<li>Default: false</li>
@@ -1183,6 +1414,8 @@ particular, use care when overriding this setting for public packages.</p>
successfully. <code>_timing.json</code> is a newline delimited list of JSON objects.</p>
<p>You can quickly view it with this <a href="https://npm.im/json">json</a> command line:
<code>npm exec -- json -g &lt; ~/.npm/_timing.json</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="umask"><code>umask</code></h4>
<ul>
<li>Default: 0</li>
@@ -1199,6 +1432,8 @@ rather adds the <code>--umask</code> config to it.</p>
<p>Thus, the effective default umask value on most POSIX systems is 0o22,
meaning that folders and executables are created with a mode of 0o755 and
other files are created with a mode of 0o644.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="unicode"><code>unicode</code></h4>
<ul>
<li>Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -1207,6 +1442,8 @@ as defined by the <code>LC_ALL</code>, <code>LC_CTYPE</code>, or <code>LANG</cod
</ul>
<p>When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="update-notifier"><code>update-notifier</code></h4>
<ul>
<li>Default: true</li>
@@ -1214,12 +1451,16 @@ false, it uses ascii characters instead of unicode glyphs.</p>
</ul>
<p>Set to false to suppress the update notification when using an older version
of npm than the latest.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="usage"><code>usage</code></h4>
<ul>
<li>Default: false</li>
<li>Type: Boolean</li>
</ul>
<p>Show short usage output about the command specified.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="user-agent"><code>user-agent</code></h4>
<ul>
<li>Default: “npm/{npm-version} node/{node-version} {platform} {arch}
@@ -1238,6 +1479,8 @@ are set.</li>
<li><code>{ci}</code> - The value of the <code>ci-name</code> config, if set, prefixed with <code>ci/</code>, or
an empty string if <code>ci-name</code> is empty.</li>
</ul>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="userconfig"><code>userconfig</code></h4>
<ul>
<li>Default: “~/.npmrc”</li>
@@ -1247,6 +1490,8 @@ an empty string if <code>ci-name</code> is empty.</li>
<p>This may be overridden by the <code>npm_config_userconfig</code> environment variable
or the <code>--userconfig</code> command line option, but may <em>not</em> be overridden by
settings in the <code>globalconfig</code> file.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="version"><code>version</code></h4>
<ul>
<li>Default: false</li>
@@ -1254,6 +1499,8 @@ settings in the <code>globalconfig</code> file.</p>
</ul>
<p>If true, output the npm version and exit successfully.</p>
<p>Only relevant when specified explicitly on the command line.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="versions"><code>versions</code></h4>
<ul>
<li>Default: false</li>
@@ -1263,6 +1510,8 @@ settings in the <code>globalconfig</code> file.</p>
the version in the current working directory’s <code>package.json</code> file if one
exists, and exit successfully.</p>
<p>Only relevant when specified explicitly on the command line.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="viewer"><code>viewer</code></h4>
<ul>
<li>Default: “man” on Posix, “browser” on Windows</li>
@@ -1270,12 +1519,16 @@ exists, and exit successfully.</p>
</ul>
<p>The program to use to view help content.</p>
<p>Set to <code>"browser"</code> to view html help content in the default web browser.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="which"><code>which</code></h4>
<ul>
<li>Default: null</li>
<li>Type: null or Number</li>
</ul>
<p>If there are multiple funding sources, which 1-indexed source URL to open.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspace"><code>workspace</code></h4>
<ul>
<li>Default:</li>
@@ -1295,6 +1548,8 @@ nested workspaces)</li>
workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="workspaces"><code>workspaces</code></h4>
<ul>
<li>Default: false</li>
@@ -1303,6 +1558,8 @@ brand new workspace within the project.</p>
<p>Enable running a command in the context of <strong>all</strong> the configured
workspaces.</p>
<p>This value is not exported to the environment for child processes.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="yes"><code>yes</code></h4>
<ul>
<li>Default: null</li>
@@ -1310,6 +1567,8 @@ workspaces.</p>
</ul>
<p>Automatically answer “yes” to any prompts that npm might print on the
command line.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="also"><code>also</code></h4>
<ul>
<li>Default: null</li>
@@ -1317,6 +1576,8 @@ command line.</p>
<li>DEPRECATED: Please use –include=dev instead.</li>
</ul>
<p>When set to <code>dev</code> or <code>development</code>, this is an alias for <code>--include=dev</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="auth-type"><code>auth-type</code></h4>
<ul>
<li>Default: “legacy”</li>
@@ -1325,6 +1586,8 @@ command line.</p>
in a future version of npm in favor of web-based login.</li>
</ul>
<p>What authentication strategy to use with <code>adduser</code>/<code>login</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cache-max"><code>cache-max</code></h4>
<ul>
<li>Default: Infinity</li>
@@ -1332,6 +1595,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: This option has been deprecated in favor of <code>--prefer-online</code></li>
</ul>
<p><code>--cache-max=0</code> is an alias for <code>--prefer-online</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="cache-min"><code>cache-min</code></h4>
<ul>
<li>Default: 0</li>
@@ -1339,6 +1604,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: This option has been deprecated in favor of <code>--prefer-offline</code>.</li>
</ul>
<p><code>--cache-min=9999 (or bigger)</code> is an alias for <code>--prefer-offline</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="dev"><code>dev</code></h4>
<ul>
<li>Default: false</li>
@@ -1346,6 +1613,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Please use –include=dev instead.</li>
</ul>
<p>Alias for <code>--include=dev</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initauthoremail"><code>init.author.email</code></h4>
<ul>
<li>Default: “”</li>
@@ -1353,6 +1622,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-author-email</code> instead.</li>
</ul>
<p>Alias for <code>--init-author-email</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initauthorname"><code>init.author.name</code></h4>
<ul>
<li>Default: “”</li>
@@ -1360,6 +1631,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-author-name</code> instead.</li>
</ul>
<p>Alias for <code>--init-author-name</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initauthorurl"><code>init.author.url</code></h4>
<ul>
<li>Default: “”</li>
@@ -1367,6 +1640,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-author-url</code> instead.</li>
</ul>
<p>Alias for <code>--init-author-url</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initlicense"><code>init.license</code></h4>
<ul>
<li>Default: “ISC”</li>
@@ -1374,6 +1649,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-license</code> instead.</li>
</ul>
<p>Alias for <code>--init-license</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initmodule"><code>init.module</code></h4>
<ul>
<li>Default: “~/.npm-init.js”</li>
@@ -1381,6 +1658,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-module</code> instead.</li>
</ul>
<p>Alias for <code>--init-module</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="initversion"><code>init.version</code></h4>
<ul>
<li>Default: “1.0.0”</li>
@@ -1388,6 +1667,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--init-version</code> instead.</li>
</ul>
<p>Alias for <code>--init-version</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="only"><code>only</code></h4>
<ul>
<li>Default: null</li>
@@ -1395,6 +1676,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--omit=dev</code> to omit dev dependencies from the install.</li>
</ul>
<p>When set to <code>prod</code> or <code>production</code>, this is an alias for <code>--omit=dev</code>.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="optional"><code>optional</code></h4>
<ul>
<li>Default: null</li>
@@ -1404,6 +1687,8 @@ in a future version of npm in favor of web-based login.</li>
</ul>
<p>Default value does install optional deps unless otherwise omitted.</p>
<p>Alias for –include=optional or –omit=optional</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="production"><code>production</code></h4>
<ul>
<li>Default: null</li>
@@ -1411,6 +1696,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use <code>--omit=dev</code> instead.</li>
</ul>
<p>Alias for <code>--omit=dev</code></p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="shrinkwrap"><code>shrinkwrap</code></h4>
<ul>
<li>Default: true</li>
@@ -1418,6 +1705,8 @@ in a future version of npm in favor of web-based login.</li>
<li>DEPRECATED: Use the –package-lock setting instead.</li>
</ul>
<p>Alias for –package-lock</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="sso-poll-frequency"><code>sso-poll-frequency</code></h4>
<ul>
<li>Default: 500</li>
@@ -1427,6 +1716,8 @@ future version of npm in favor of web-based login.</li>
</ul>
<p>When used with SSO-enabled <code>auth-type</code>s, configures how regularly the
registry should be polled while the user is completing authentication.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="sso-type"><code>sso-type</code></h4>
<ul>
<li>Default: “oauth”</li>
@@ -1435,6 +1726,8 @@ registry should be polled while the user is completing authentication.</p>
future version of npm in favor of web-based login.</li>
</ul>
<p>If <code>--auth-type=sso</code>, the type of SSO type to use.</p>
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h4 id="tmp"><code>tmp</code></h4>
<ul>
<li>Default: The value returned by the Node.js <code>os.tmpdir()</code> method
@@ -1447,6 +1740,8 @@ special location in the cache, and they are managed by
<p>Historically, the location where temporary files were stored. No longer
relevant.</p>
<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
+<!-- raw HTML omitted -->
<h3 id="see-also">See also</h3>
<ul>
<li><a href="../commands/npm-config.html">npm config</a></li>
diff --git a/deps/npm/docs/output/using-npm/registry.html b/deps/npm/docs/output/using-npm/registry.html
index 451b9ac533..3514ac72cd 100644
--- a/deps/npm/docs/output/using-npm/registry.html
+++ b/deps/npm/docs/output/using-npm/registry.html
@@ -150,7 +150,7 @@ that implements the CommonJS Package Registry specification for reading
package info.</p>
<p>npm is configured to use the <strong>npm public registry</strong> at
<a href="https://registry.npmjs.org">https://registry.npmjs.org</a> by default. Use of the npm public registry is
-subject to terms of use available at <a href="https://www.npmjs.com/policies/terms">https://www.npmjs.com/policies/terms</a>.</p>
+subject to terms of use available at <a href="https://docs.npmjs.com/policies/terms">https://docs.npmjs.com/policies/terms</a>.</p>
<p>You can configure npm to use any compatible registry you like, and even run
your own registry. Use of someone else’s registry may be governed by their
terms of use.</p>
diff --git a/deps/npm/lib/cache.js b/deps/npm/lib/cache.js
index 55fb3e8636..aed2cce31e 100644
--- a/deps/npm/lib/cache.js
+++ b/deps/npm/lib/cache.js
@@ -4,7 +4,59 @@ const log = require('npmlog')
const pacote = require('pacote')
const path = require('path')
const rimraf = promisify(require('rimraf'))
+const semver = require('semver')
const BaseCommand = require('./base-command.js')
+const npa = require('npm-package-arg')
+const jsonParse = require('json-parse-even-better-errors')
+
+const searchCachePackage = async (path, spec, cacheKeys) => {
+ const parsed = npa(spec)
+ if (parsed.rawSpec !== '' && parsed.type === 'tag')
+ throw new Error(`Cannot list cache keys for a tagged package.`)
+ const searchMFH = new RegExp(`^make-fetch-happen:request-cache:.*(?<!/[@a-zA-Z]+)/${parsed.name}/-/(${parsed.name}[^/]+.tgz)$`)
+ const searchPack = new RegExp(`^make-fetch-happen:request-cache:.*/${parsed.escapedName}$`)
+ const results = new Set()
+ cacheKeys = new Set(cacheKeys)
+ for (const key of cacheKeys) {
+ // match on the public key registry url format
+ if (searchMFH.test(key)) {
+ // extract the version from the filename
+ const filename = key.match(searchMFH)[1]
+ const noExt = filename.slice(0, -4)
+ const noScope = `${parsed.name.split('/').pop()}-`
+ const ver = noExt.slice(noScope.length)
+ if (semver.satisfies(ver, parsed.rawSpec))
+ results.add(key)
+ continue
+ }
+ // is this key a packument?
+ if (!searchPack.test(key))
+ continue
+
+ results.add(key)
+ let packument, details
+ try {
+ details = await cacache.get(path, key)
+ packument = jsonParse(details.data)
+ } catch (_) {
+ // if we couldn't parse the packument, abort
+ continue
+ }
+ if (!packument.versions || typeof packument.versions !== 'object')
+ continue
+ // assuming this is a packument
+ for (const ver of Object.keys(packument.versions)) {
+ if (semver.satisfies(ver, parsed.rawSpec)) {
+ if (packument.versions[ver].dist
+ && typeof packument.versions[ver].dist === 'object'
+ && packument.versions[ver].dist.tarball !== undefined
+ && cacheKeys.has(`make-fetch-happen:request-cache:${packument.versions[ver].dist.tarball}`))
+ results.add(`make-fetch-happen:request-cache:${packument.versions[ver].dist.tarball}`)
+ }
+ }
+ }
+ return results
+}
class Cache extends BaseCommand {
static get description () {
@@ -29,7 +81,8 @@ class Cache extends BaseCommand {
'add <tarball url>',
'add <git url>',
'add <name>@<version>',
- 'clean',
+ 'clean [<key>]',
+ 'ls [<name>@<version>]',
'verify',
]
}
@@ -37,13 +90,15 @@ class Cache extends BaseCommand {
async completion (opts) {
const argv = opts.conf.argv.remain
if (argv.length === 2)
- return ['add', 'clean', 'verify']
+ return ['add', 'clean', 'verify', 'ls', 'delete']
// TODO - eventually...
switch (argv[2]) {
case 'verify':
case 'clean':
case 'add':
+ case 'ls':
+ case 'delete':
return []
}
}
@@ -61,6 +116,8 @@ class Cache extends BaseCommand {
return await this.add(args)
case 'verify': case 'check':
return await this.verify()
+ case 'ls':
+ return await this.ls(args)
default:
throw Object.assign(new Error(this.usage), { code: 'EUSAGE' })
}
@@ -68,27 +125,38 @@ class Cache extends BaseCommand {
// npm cache clean [pkg]*
async clean (args) {
- if (args.length)
- throw new Error('npm cache clear does not accept arguments')
-
const cachePath = path.join(this.npm.cache, '_cacache')
- if (!this.npm.config.get('force')) {
- throw new Error(`As of npm@5, the npm cache self-heals from corruption issues
-by treating integrity mismatches as cache misses. As a result,
-data extracted from the cache is guaranteed to be valid. If you
-want to make sure everything is consistent, use \`npm cache verify\`
-instead. Deleting the cache can only make npm go slower, and is
-not likely to correct any problems you may be encountering!
-
-On the other hand, if you're debugging an issue with the installer,
-or race conditions that depend on the timing of writing to an empty
-cache, you can use \`npm install --cache /tmp/empty-cache\` to use a
-temporary cache instead of nuking the actual one.
-
-If you're sure you want to delete the entire cache, rerun this command
-with --force.`)
+ if (args.length === 0) {
+ if (!this.npm.config.get('force')) {
+ throw new Error(`As of npm@5, the npm cache self-heals from corruption issues
+ by treating integrity mismatches as cache misses. As a result,
+ data extracted from the cache is guaranteed to be valid. If you
+ want to make sure everything is consistent, use \`npm cache verify\`
+ instead. Deleting the cache can only make npm go slower, and is
+ not likely to correct any problems you may be encountering!
+
+ On the other hand, if you're debugging an issue with the installer,
+ or race conditions that depend on the timing of writing to an empty
+ cache, you can use \`npm install --cache /tmp/empty-cache\` to use a
+ temporary cache instead of nuking the actual one.
+
+ If you're sure you want to delete the entire cache, rerun this command
+ with --force.`)
+ }
+ return rimraf(cachePath)
+ }
+ for (const key of args) {
+ let entry
+ try {
+ entry = await cacache.get(cachePath, key)
+ } catch (err) {
+ this.npm.log.warn(`Not Found: ${key}`)
+ break
+ }
+ this.npm.output(`Deleted: ${key}`)
+ await cacache.rm.entry(cachePath, key)
+ await cacache.rm.content(cachePath, entry.integrity)
}
- return rimraf(cachePath)
}
// npm cache add <tarball-url>...
@@ -131,6 +199,24 @@ with --force.`)
this.npm.output(`Index entries: ${stats.totalEntries}`)
this.npm.output(`Finished in ${stats.runTime.total / 1000}s`)
}
+
+ // npm cache ls [--package <spec> ...]
+ async ls (specs) {
+ const cachePath = path.join(this.npm.cache, '_cacache')
+ const cacheKeys = Object.keys(await cacache.ls(cachePath))
+ if (specs.length > 0) {
+ // get results for each package spec specified
+ const results = new Set()
+ for (const spec of specs) {
+ const keySet = await searchCachePackage(cachePath, spec, cacheKeys)
+ for (const key of keySet)
+ results.add(key)
+ }
+ [...results].sort((a, b) => a.localeCompare(b, 'en')).forEach(key => this.npm.output(key))
+ return
+ }
+ cacheKeys.sort((a, b) => a.localeCompare(b, 'en')).forEach(key => this.npm.output(key))
+ }
}
module.exports = Cache
diff --git a/deps/npm/lib/cli.js b/deps/npm/lib/cli.js
index 9544f8451f..e33ac91fa5 100644
--- a/deps/npm/lib/cli.js
+++ b/deps/npm/lib/cli.js
@@ -27,7 +27,8 @@ module.exports = async (process) => {
if (process.argv[1][process.argv[1].length - 1] === 'g')
process.argv.splice(1, 1, 'npm', '-g')
- log.verbose('cli', process.argv)
+ const replaceInfo = require('../lib/utils/replace-info.js')
+ log.verbose('cli', replaceInfo(process.argv))
log.info('using', 'npm@%s', npm.version)
log.info('using', 'node@%s', process.version)
diff --git a/deps/npm/lib/exec.js b/deps/npm/lib/exec.js
index 959fab6663..8c64c2f240 100644
--- a/deps/npm/lib/exec.js
+++ b/deps/npm/lib/exec.js
@@ -68,7 +68,6 @@ class Exec extends BaseCommand {
async _exec (_args, { locationMsg, path, runPath }) {
const args = [..._args]
const call = this.npm.config.get('call')
- const color = this.npm.config.get('color')
const {
flatOptions,
localBin,
@@ -87,7 +86,6 @@ class Exec extends BaseCommand {
...flatOptions,
args,
call,
- color,
localBin,
locationMsg,
log,
@@ -103,7 +101,7 @@ class Exec extends BaseCommand {
async _execWorkspaces (args, filters) {
await this.setWorkspaces(filters)
- const color = this.npm.config.get('color')
+ const color = this.npm.color
for (const path of this.workspacePaths) {
const locationMsg = await getLocationMsg({ color, path })
diff --git a/deps/npm/lib/fund.js b/deps/npm/lib/fund.js
index 92580a756e..1e0fa1ecb9 100644
--- a/deps/npm/lib/fund.js
+++ b/deps/npm/lib/fund.js
@@ -109,7 +109,7 @@ class Fund extends ArboristWorkspaceCmd {
}
printHuman (fundingInfo) {
- const color = !!this.npm.color
+ const color = this.npm.color
const unicode = this.npm.config.get('unicode')
const seenUrls = new Map()
diff --git a/deps/npm/lib/ls.js b/deps/npm/lib/ls.js
index 91e9a9dd3d..7e41892c53 100644
--- a/deps/npm/lib/ls.js
+++ b/deps/npm/lib/ls.js
@@ -67,7 +67,7 @@ class LS extends ArboristWorkspaceCmd {
async ls (args) {
const all = this.npm.config.get('all')
- const color = !!this.npm.color
+ const color = this.npm.color
const depth = this.npm.config.get('depth')
const dev = this.npm.config.get('dev')
const development = this.npm.config.get('development')
diff --git a/deps/npm/lib/npm.js b/deps/npm/lib/npm.js
index db3559a384..966d11210c 100644
--- a/deps/npm/lib/npm.js
+++ b/deps/npm/lib/npm.js
@@ -232,7 +232,7 @@ const npm = module.exports = new class extends EventEmitter {
process.emit('timeEnd', 'npm:load:setTitle')
process.emit('time', 'npm:load:setupLog')
- this.color = setupLog(this.config)
+ setupLog(this.config)
process.emit('timeEnd', 'npm:load:setupLog')
process.env.COLOR = this.color ? '1' : '0'
@@ -261,6 +261,12 @@ const npm = module.exports = new class extends EventEmitter {
return flat
}
+ get color () {
+ // This is a special derived value that takes into consideration not only
+ // the config, but whether or not we are operating in a tty.
+ return this.flatOptions.color
+ }
+
get lockfileVersion () {
return 2
}
diff --git a/deps/npm/lib/run-script.js b/deps/npm/lib/run-script.js
index b94d2fce07..1daaeb9900 100644
--- a/deps/npm/lib/run-script.js
+++ b/deps/npm/lib/run-script.js
@@ -137,7 +137,7 @@ class RunScript extends BaseCommand {
path = path || this.npm.localPrefix
const { scripts, name, _id } = await rpj(`${path}/package.json`)
const pkgid = _id || name
- const color = !!this.npm.color
+ const color = this.npm.color
if (!scripts)
return []
diff --git a/deps/npm/lib/set.js b/deps/npm/lib/set.js
index 74a002cd63..a9f16f3b34 100644
--- a/deps/npm/lib/set.js
+++ b/deps/npm/lib/set.js
@@ -22,7 +22,7 @@ class Set extends BaseCommand {
exec (args, cb) {
if (!args.length)
- return cb(this.usage)
+ return cb(this.usageError())
this.npm.commands.config(['set'].concat(args), cb)
}
}
diff --git a/deps/npm/lib/test.js b/deps/npm/lib/test.js
index e78fdf0c78..8ab1e85823 100644
--- a/deps/npm/lib/test.js
+++ b/deps/npm/lib/test.js
@@ -19,15 +19,5 @@ class Test extends LifecycleCmd {
'script-shell',
]
}
-
- exec (args, cb) {
- super.exec(args, er => {
- if (er && er.code === 'ELIFECYCLE') {
- /* eslint-disable standard/no-callback-literal */
- cb('Test failed. See above for more details.')
- } else
- cb(er)
- })
- }
}
module.exports = Test
diff --git a/deps/npm/lib/utils/config/definitions.js b/deps/npm/lib/utils/config/definitions.js
index abe6bda70d..c717816278 100644
--- a/deps/npm/lib/utils/config/definitions.js
+++ b/deps/npm/lib/utils/config/definitions.js
@@ -160,6 +160,12 @@ define('access', {
(and installable) set \`--access=public\`. The only valid values for
\`access\` are \`public\` and \`restricted\`. Unscoped packages _always_
have an access level of \`public\`.
+
+ Note: Using the \`--access\` flag on the \`npm publish\` command will only
+ set the package access level on the initial publish of the package. Any
+ subsequent \`npm publish\` commands using the \`--access\` flag will not
+ have an effect to the access level. To make changes to the access level
+ after the initial publish use \`npm access\`.
`,
flatten,
})
@@ -438,6 +444,9 @@ define('cidr', {
flatten,
})
+// This should never be directly used, the flattened value is the derived value
+// and is sent to other modules, and is also exposed as `npm.color` for use
+// inside npm itself.
define('color', {
default: !process.env.NO_COLOR || process.env.NO_COLOR === '0',
usage: '--color|--no-color|--color always',
diff --git a/deps/npm/lib/utils/config/describe-all.js b/deps/npm/lib/utils/config/describe-all.js
index 5fb785f083..c8a973cc0f 100644
--- a/deps/npm/lib/utils/config/describe-all.js
+++ b/deps/npm/lib/utils/config/describe-all.js
@@ -11,6 +11,9 @@ const describeAll = () => {
}
return Object.entries(definitions).sort(sort)
.map(([key, def]) => def.describe())
- .join('\n\n')
+ .join(
+ '\n\n<!-- automatically generated, do not edit manually -->\n' +
+ '<!-- see lib/utils/config/definitions.js -->\n\n'
+ )
}
module.exports = describeAll
diff --git a/deps/npm/lib/utils/did-you-mean.js b/deps/npm/lib/utils/did-you-mean.js
index 98133196e3..0cfdd03525 100644
--- a/deps/npm/lib/utils/did-you-mean.js
+++ b/deps/npm/lib/utils/did-you-mean.js
@@ -1,10 +1,10 @@
-const leven = require('leven')
+const { distance } = require('fastest-levenshtein')
const readJson = require('read-package-json-fast')
const { cmdList } = require('./cmd-list.js')
const didYouMean = async (npm, path, scmd) => {
const bestCmd = cmdList
- .filter(cmd => leven(scmd, cmd) < scmd.length * 0.4 && scmd !== cmd)
+ .filter(cmd => distance(scmd, cmd) < scmd.length * 0.4 && scmd !== cmd)
.map(str => ` npm ${str} # ${npm.commands[str].description}`)
const pkg = await readJson(`${path}/package.json`)
@@ -12,13 +12,13 @@ const didYouMean = async (npm, path, scmd) => {
// We would already be suggesting this in `npm x` so omit them here
const runScripts = ['stop', 'start', 'test', 'restart']
const bestRun = Object.keys(scripts || {})
- .filter(cmd => leven(scmd, cmd) < scmd.length * 0.4 &&
+ .filter(cmd => distance(scmd, cmd) < scmd.length * 0.4 &&
!runScripts.includes(cmd))
.map(str => ` npm run ${str} # run the "${str}" package script`)
const { bin } = pkg
const bestBin = Object.keys(bin || {})
- .filter(cmd => leven(scmd, cmd) < scmd.length * 0.4)
+ .filter(cmd => distance(scmd, cmd) < scmd.length * 0.4)
.map(str => ` npm exec ${str} # run the "${str}" command from either this or a remote npm package`)
const best = [...bestCmd, ...bestRun, ...bestBin]
diff --git a/deps/npm/lib/utils/error-message.js b/deps/npm/lib/utils/error-message.js
index 3b590f712e..da97195dd0 100644
--- a/deps/npm/lib/utils/error-message.js
+++ b/deps/npm/lib/utils/error-message.js
@@ -99,9 +99,9 @@ module.exports = (er, npm) => {
case 'EJSONPARSE':
// Check whether we ran into a conflict in our own package.json
- if (er.file === resolve(npm.prefix, 'package.json')) {
+ if (er.path === resolve(npm.prefix, 'package.json')) {
const { isDiff } = require('parse-conflict-json')
- const txt = require('fs').readFileSync(er.file, 'utf8')
+ const txt = require('fs').readFileSync(er.path, 'utf8')
.replace(/\r\n/g, '\n')
if (isDiff(txt)) {
detail.push([
@@ -109,9 +109,7 @@ module.exports = (er, npm) => {
[
'Merge conflict detected in your package.json.',
'',
- 'Please resolve the package.json conflict and retry the command:',
- '',
- `$ ${process.argv.join(' ')}`,
+ 'Please resolve the package.json conflict and retry.',
].join('\n'),
])
break
diff --git a/deps/npm/lib/utils/exit-handler.js b/deps/npm/lib/utils/exit-handler.js
index 95c9655a71..7be138d2c3 100644
--- a/deps/npm/lib/utils/exit-handler.js
+++ b/deps/npm/lib/utils/exit-handler.js
@@ -52,16 +52,17 @@ process.on('exit', code => {
if (!code)
npm.log.info('ok')
- else {
+ else
npm.log.verbose('code', code)
- if (!exitHandlerCalled) {
- npm.log.error('', 'Exit handler never called!')
- console.error('')
- npm.log.error('', 'This is an error with npm itself. Please report this error at:')
- npm.log.error('', ' <https://github.com/npm/cli/issues>')
- // TODO this doesn't have an npm.config.loaded guard
- writeLogFile()
- }
+
+ if (!exitHandlerCalled) {
+ process.exitCode = code || 1
+ npm.log.error('', 'Exit handler never called!')
+ console.error('')
+ npm.log.error('', 'This is an error with npm itself. Please report this error at:')
+ npm.log.error('', ' <https://github.com/npm/cli/issues>')
+ // TODO this doesn't have an npm.config.loaded guard
+ writeLogFile()
}
// In timing mode we always write the log file
if (npm.config.loaded && npm.config.get('timing') && !wroteLogFile)
diff --git a/deps/npm/lib/utils/format-bytes.js b/deps/npm/lib/utils/format-bytes.js
new file mode 100644
index 0000000000..87fb561aab
--- /dev/null
+++ b/deps/npm/lib/utils/format-bytes.js
@@ -0,0 +1,22 @@
+// Convert bytes to printable output, for file reporting in tarballs
+// Only supports up to GB because that's way larger than anything the registry
+// supports anyways.
+
+const formatBytes = (bytes, space = true) => {
+ let spacer = ''
+ if (space)
+ spacer = ' '
+
+ if (bytes < 1000) // B
+ return `${bytes}${spacer}B`
+
+ if (bytes < 1000000) // kB
+ return `${(bytes / 1000).toFixed(1)}${spacer}kB`
+
+ if (bytes < 1000000000) // MB
+ return `${(bytes / 1000000).toFixed(1)}${spacer}MB`
+
+ return `${(bytes / 1000000000).toFixed(1)}${spacer}GB`
+}
+
+module.exports = formatBytes
diff --git a/deps/npm/lib/utils/setup-log.js b/deps/npm/lib/utils/setup-log.js
index 9ee79d192d..aaf7fa47e2 100644
--- a/deps/npm/lib/utils/setup-log.js
+++ b/deps/npm/lib/utils/setup-log.js
@@ -18,6 +18,7 @@ module.exports = (config) => {
const stderrTTY = process.stderr.isTTY
const dumbTerm = process.env.TERM === 'dumb'
const stderrNotDumb = stderrTTY && !dumbTerm
+ // this logic is duplicated in the config 'color' flattener
const enableColorStderr = color === 'always' ? true
: color === false ? false
: stderrTTY
@@ -58,6 +59,4 @@ module.exports = (config) => {
log.enableProgress()
else
log.disableProgress()
-
- return enableColorStdout
}
diff --git a/deps/npm/lib/utils/tar.js b/deps/npm/lib/utils/tar.js
index 9e7c332953..c3071c1bd4 100644
--- a/deps/npm/lib/utils/tar.js
+++ b/deps/npm/lib/utils/tar.js
@@ -1,7 +1,7 @@
const tar = require('tar')
const ssri = require('ssri')
const npmlog = require('npmlog')
-const byteSize = require('byte-size')
+const formatBytes = require('./format-bytes.js')
const columnify = require('columnify')
const logTar = (tarball, opts = {}) => {
@@ -11,9 +11,9 @@ const logTar = (tarball, opts = {}) => {
log.notice('=== Tarball Contents ===')
if (tarball.files.length) {
log.notice('', columnify(tarball.files.map((f) => {
- const bytes = byteSize(f.size)
+ const bytes = formatBytes(f.size, false)
return (/^node_modules\//.test(f.path)) ? null
- : { path: f.path, size: `${bytes.value}${bytes.unit}` }
+ : { path: f.path, size: `${bytes}` }
}).filter(f => f), {
include: ['size', 'path'],
showHeaders: false,
@@ -28,8 +28,8 @@ const logTar = (tarball, opts = {}) => {
{ name: 'name:', value: tarball.name },
{ name: 'version:', value: tarball.version },
tarball.filename && { name: 'filename:', value: tarball.filename },
- { name: 'package size:', value: byteSize(tarball.size) },
- { name: 'unpacked size:', value: byteSize(tarball.unpackedSize) },
+ { name: 'package size:', value: formatBytes(tarball.size) },
+ { name: 'unpacked size:', value: formatBytes(tarball.unpackedSize) },
{ name: 'shasum:', value: tarball.shasum },
{
name: 'integrity:',
diff --git a/deps/npm/lib/view.js b/deps/npm/lib/view.js
index 47e631f556..f4fc5974ee 100644
--- a/deps/npm/lib/view.js
+++ b/deps/npm/lib/view.js
@@ -1,6 +1,5 @@
// npm view [pkg [pkg ...]]
-const byteSize = require('byte-size')
const color = require('ansicolors')
const columns = require('cli-columns')
const fs = require('fs')
@@ -8,6 +7,7 @@ const jsonParse = require('json-parse-even-better-errors')
const log = require('npmlog')
const npa = require('npm-package-arg')
const { resolve } = require('path')
+const formatBytes = require('./utils/format-bytes.js')
const relativeDate = require('tiny-relative-date')
const semver = require('semver')
const style = require('ansistyles')
@@ -315,7 +315,7 @@ class View extends BaseCommand {
tags.push(`${style.bright(color.green(t))}: ${version}`)
})
const unpackedSize = manifest.dist.unpackedSize &&
- byteSize(manifest.dist.unpackedSize)
+ formatBytes(manifest.dist.unpackedSize, true)
const licenseField = manifest.license || 'Proprietary'
const info = {
name: color.green(manifest.name),
@@ -356,7 +356,7 @@ class View extends BaseCommand {
manifest.dist.integrity && color.yellow(manifest.dist.integrity),
fileCount:
manifest.dist.fileCount && color.yellow(manifest.dist.fileCount),
- unpackedSize: unpackedSize && color.yellow(unpackedSize.value) + ' ' + unpackedSize.unit,
+ unpackedSize: unpackedSize && color.yellow(unpackedSize),
}
if (info.license.toLowerCase().trim() === 'proprietary')
info.license = style.bright(color.red(info.license))
diff --git a/deps/npm/man/man1/npm-access.1 b/deps/npm/man/man1/npm-access.1
index 4e2f20ef30..0039adcfbf 100644
--- a/deps/npm/man/man1/npm-access.1
+++ b/deps/npm/man/man1/npm-access.1
@@ -1,4 +1,4 @@
-.TH "NPM\-ACCESS" "1" "July 2021" "" ""
+.TH "NPM\-ACCESS" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-access\fR \- Set access level on published packages
.SS Synopsis
@@ -88,6 +88,7 @@ Management of teams and team memberships is done with the \fBnpm team\fP command
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -98,6 +99,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -112,6 +116,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-adduser.1 b/deps/npm/man/man1/npm-adduser.1
index 9dcb4036f3..59d9a5a4e4 100644
--- a/deps/npm/man/man1/npm-adduser.1
+++ b/deps/npm/man/man1/npm-adduser.1
@@ -1,4 +1,4 @@
-.TH "NPM\-ADDUSER" "1" "July 2021" "" ""
+.TH "NPM\-ADDUSER" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-adduser\fR \- Add a registry user account
.SS Synopsis
@@ -33,6 +33,7 @@ your existing record\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -43,6 +44,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscope\fP
.RS 0
.IP \(bu 2
@@ -79,6 +83,9 @@ This will also cause \fBnpm init\fP to create a scoped package\.
npm init \-\-scope=@foo \-\-yes
.fi
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-audit.1 b/deps/npm/man/man1/npm-audit.1
index b1638993cf..4040611801 100644
--- a/deps/npm/man/man1/npm-audit.1
+++ b/deps/npm/man/man1/npm-audit.1
@@ -1,4 +1,4 @@
-.TH "NPM\-AUDIT" "1" "July 2021" "" ""
+.TH "NPM\-AUDIT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-audit\fR \- Run a security audit
.SS Synopsis
@@ -203,6 +203,7 @@ $ npm audit \-\-audit\-level=moderate
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBaudit\-level\fP
.RS 0
.IP \(bu 2
@@ -214,6 +215,9 @@ Type: null, "info", "low", "moderate", "high", "critical", or "none"
.P
The minimum level of vulnerability for \fBnpm audit\fP to exit with a non\-zero
exit code\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -230,6 +234,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBforce\fP
.RS 0
.IP \(bu 2
@@ -270,6 +277,9 @@ Allow clobbering existing values in \fBnpm pkg\fP
.P
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -288,6 +298,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\-only\fP
.RS 0
.IP \(bu 2
@@ -305,6 +318,9 @@ instead of checking \fBnode_modules\fP and downloading dependencies\.
.P
For \fBlist\fP this means the output will be based on the tree described by the
\fBpackage\-lock\.json\fP, rather than the contents of \fBnode_modules\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -326,6 +342,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -356,6 +375,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -369,6 +391,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-bin.1 b/deps/npm/man/man1/npm-bin.1
index fd7e3129c6..b8d4796814 100644
--- a/deps/npm/man/man1/npm-bin.1
+++ b/deps/npm/man/man1/npm-bin.1
@@ -1,4 +1,4 @@
-.TH "NPM\-BIN" "1" "July 2021" "" ""
+.TH "NPM\-BIN" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-bin\fR \- Display npm bin folder
.SS Synopsis
@@ -16,6 +16,7 @@ Print the folder where npm will install executables\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -38,6 +39,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-bugs.1 b/deps/npm/man/man1/npm-bugs.1
index 1246f39bed..101ff35e09 100644
--- a/deps/npm/man/man1/npm-bugs.1
+++ b/deps/npm/man/man1/npm-bugs.1
@@ -1,4 +1,4 @@
-.TH "NPM\-BUGS" "1" "July 2021" "" ""
+.TH "NPM\-BUGS" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-bugs\fR \- Report bugs for a package in a web browser
.SS Synopsis
@@ -19,6 +19,7 @@ will search for a \fBpackage\.json\fP in the current folder and use the \fBname\
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBbrowser\fP
.RS 0
.IP \(bu 2
@@ -34,6 +35,9 @@ Set to \fBfalse\fP to suppress browser behavior and instead print urls to
terminal\.
.P
Set to \fBtrue\fP to use default system URL opener\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -44,6 +48,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-cache.1 b/deps/npm/man/man1/npm-cache.1
index e2807ca57a..fcb2981944 100644
--- a/deps/npm/man/man1/npm-cache.1
+++ b/deps/npm/man/man1/npm-cache.1
@@ -1,4 +1,4 @@
-.TH "NPM\-CACHE" "1" "July 2021" "" ""
+.TH "NPM\-CACHE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-cache\fR \- Manipulates packages cache
.SS Synopsis
@@ -74,6 +74,7 @@ verify\fP\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBcache\fP
.RS 0
.IP \(bu 2
@@ -85,6 +86,9 @@ Type: Path
.P
The location of npm's cache directory\. See npm help \fBnpm
cache\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-ci.1 b/deps/npm/man/man1/npm-ci.1
index f4ad77607e..ccc462be57 100644
--- a/deps/npm/man/man1/npm-ci.1
+++ b/deps/npm/man/man1/npm-ci.1
@@ -1,4 +1,4 @@
-.TH "NPM\-CI" "1" "July 2021" "" ""
+.TH "NPM\-CI" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-ci\fR \- Install a project with a clean slate
.SS Synopsis
@@ -81,6 +81,7 @@ cache:
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -94,6 +95,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -109,6 +113,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -120,6 +127,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-completion.1 b/deps/npm/man/man1/npm-completion.1
index 1fc1ec9a77..41fd2ae603 100644
--- a/deps/npm/man/man1/npm-completion.1
+++ b/deps/npm/man/man1/npm-completion.1
@@ -1,4 +1,4 @@
-.TH "NPM\-COMPLETION" "1" "July 2021" "" ""
+.TH "NPM\-COMPLETION" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-completion\fR \- Tab Completion for npm
.SS Synopsis
diff --git a/deps/npm/man/man1/npm-config.1 b/deps/npm/man/man1/npm-config.1
index 405160025f..d7dda13529 100644
--- a/deps/npm/man/man1/npm-config.1
+++ b/deps/npm/man/man1/npm-config.1
@@ -1,4 +1,4 @@
-.TH "NPM\-CONFIG" "1" "July 2021" "" ""
+.TH "NPM\-CONFIG" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-config\fR \- Manage the npm configuration files
.SS Synopsis
@@ -97,6 +97,7 @@ global config\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -115,6 +116,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -137,6 +141,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBeditor\fP
.RS 0
.IP \(bu 2
@@ -148,6 +155,9 @@ Type: String
.RE
.P
The command to run for \fBnpm edit\fP and \fBnpm config edit\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlocation\fP
.RS 0
.IP \(bu 2
@@ -159,6 +169,9 @@ Type: "global", "user", or "project"
.RE
.P
When passed to \fBnpm config\fP this refers to which config file to use\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -169,6 +182,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-dedupe.1 b/deps/npm/man/man1/npm-dedupe.1
index 2930a90609..e4344ec0a2 100644
--- a/deps/npm/man/man1/npm-dedupe.1
+++ b/deps/npm/man/man1/npm-dedupe.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DEDUPE" "1" "July 2021" "" ""
+.TH "NPM\-DEDUPE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-dedupe\fR \- Reduce duplication in the package tree
.SS Synopsis
@@ -78,6 +78,7 @@ Using \fBnpm find\-dupes\fP will run the command in \fB\-\-dry\-run\fP mode\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -93,6 +94,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -106,6 +110,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -128,6 +135,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -143,6 +153,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -164,6 +177,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -179,6 +195,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -192,6 +211,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -207,6 +229,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -219,6 +244,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -235,6 +263,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -265,6 +296,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -278,6 +312,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-deprecate.1 b/deps/npm/man/man1/npm-deprecate.1
index 54d3eae897..dbcfe389a2 100644
--- a/deps/npm/man/man1/npm-deprecate.1
+++ b/deps/npm/man/man1/npm-deprecate.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DEPRECATE" "1" "July 2021" "" ""
+.TH "NPM\-DEPRECATE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-deprecate\fR \- Deprecate a version of a package
.SS Synopsis
@@ -44,6 +44,7 @@ format an empty string\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -54,6 +55,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -68,6 +72,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-diff.1 b/deps/npm/man/man1/npm-diff.1
index 5464370bfd..ecf97b3162 100644
--- a/deps/npm/man/man1/npm-diff.1
+++ b/deps/npm/man/man1/npm-diff.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DIFF" "1" "July 2021" "" ""
+.TH "NPM\-DIFF" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-diff\fR \- The registry diff command
.SS Synopsis
@@ -149,6 +149,7 @@ located within the folder \fB\|\./lib/\fP and changed lines of code within the
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBdiff\fP
.RS 0
.IP \(bu 2
@@ -159,6 +160,9 @@ Type: String (can be set multiple times)
.RE
.P
Define arguments to compare in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-name\-only\fP
.RS 0
.IP \(bu 2
@@ -169,6 +173,9 @@ Type: Boolean
.RE
.P
Prints only filenames when using \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-unified\fP
.RS 0
.IP \(bu 2
@@ -179,6 +186,9 @@ Type: Number
.RE
.P
The number of lines of context to print in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-ignore\-all\-space\fP
.RS 0
.IP \(bu 2
@@ -189,6 +199,9 @@ Type: Boolean
.RE
.P
Ignore whitespace when comparing lines in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-no\-prefix\fP
.RS 0
.IP \(bu 2
@@ -202,6 +215,9 @@ Do not show any source or destination prefix in \fBnpm diff\fP output\.
.P
Note: this causes \fBnpm diff\fP to ignore the \fB\-\-diff\-src\-prefix\fP and
\fB\-\-diff\-dst\-prefix\fP configs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-src\-prefix\fP
.RS 0
.IP \(bu 2
@@ -212,6 +228,9 @@ Type: String
.RE
.P
Source prefix to be used in \fBnpm diff\fP output\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-dst\-prefix\fP
.RS 0
.IP \(bu 2
@@ -222,6 +241,9 @@ Type: String
.RE
.P
Destination prefix to be used in \fBnpm diff\fP output\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-text\fP
.RS 0
.IP \(bu 2
@@ -232,6 +254,9 @@ Type: Boolean
.RE
.P
Treat all files as text in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -254,6 +279,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBtag\fP
.RS 0
.IP \(bu 2
@@ -271,6 +299,9 @@ command, if no explicit tag is given\.
.P
When used by the \fBnpm diff\fP command, this is the tag used to fetch the
tarball that will be compared with the local files by default\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -301,6 +332,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -314,6 +348,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SH See Also
.RS 0
diff --git a/deps/npm/man/man1/npm-dist-tag.1 b/deps/npm/man/man1/npm-dist-tag.1
index 5b403c4b19..edc4eace5e 100644
--- a/deps/npm/man/man1/npm-dist-tag.1
+++ b/deps/npm/man/man1/npm-dist-tag.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DIST\-TAG" "1" "July 2021" "" ""
+.TH "NPM\-DIST\-TAG" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-dist-tag\fR \- Modify package distribution tags
.SS Synopsis
@@ -93,6 +93,7 @@ not begin with a number or the letter \fBv\fP\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -123,6 +124,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -136,6 +140,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-docs.1 b/deps/npm/man/man1/npm-docs.1
index 880d4f8cb7..aa336e0788 100644
--- a/deps/npm/man/man1/npm-docs.1
+++ b/deps/npm/man/man1/npm-docs.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DOCS" "1" "July 2021" "" ""
+.TH "NPM\-DOCS" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-docs\fR \- Open documentation for a package in a web browser
.SS Synopsis
@@ -20,6 +20,7 @@ the \fBname\fP property\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBbrowser\fP
.RS 0
.IP \(bu 2
@@ -35,6 +36,9 @@ Set to \fBfalse\fP to suppress browser behavior and instead print urls to
terminal\.
.P
Set to \fBtrue\fP to use default system URL opener\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -45,6 +49,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -75,6 +82,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -88,6 +98,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-doctor.1 b/deps/npm/man/man1/npm-doctor.1
index e803e49cab..bd27ec0b99 100644
--- a/deps/npm/man/man1/npm-doctor.1
+++ b/deps/npm/man/man1/npm-doctor.1
@@ -1,4 +1,4 @@
-.TH "NPM\-DOCTOR" "1" "July 2021" "" ""
+.TH "NPM\-DOCTOR" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-doctor\fR \- Check your npm environment
.SS Synopsis
@@ -106,6 +106,7 @@ reset the cache\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -116,6 +117,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-edit.1 b/deps/npm/man/man1/npm-edit.1
index 56404e9bb5..be8b624c7d 100644
--- a/deps/npm/man/man1/npm-edit.1
+++ b/deps/npm/man/man1/npm-edit.1
@@ -1,4 +1,4 @@
-.TH "NPM\-EDIT" "1" "July 2021" "" ""
+.TH "NPM\-EDIT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-edit\fR \- Edit an installed package
.SS Synopsis
@@ -25,6 +25,7 @@ changes to your locally installed copy\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBeditor\fP
.RS 0
.IP \(bu 2
@@ -36,6 +37,9 @@ Type: String
.RE
.P
The command to run for \fBnpm edit\fP and \fBnpm config edit\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-exec.1 b/deps/npm/man/man1/npm-exec.1
index 4a0cc4e9a9..7543e22180 100644
--- a/deps/npm/man/man1/npm-exec.1
+++ b/deps/npm/man/man1/npm-exec.1
@@ -1,4 +1,4 @@
-.TH "NPM\-EXEC" "1" "July 2021" "" ""
+.TH "NPM\-EXEC" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-exec\fR \- Run a command from a local or remote npm package
.SS Synopsis
@@ -134,6 +134,7 @@ $ npm exec \-\- foo@latest bar \-\-package=@npmcli/foo
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBpackage\fP
.RS 0
.IP \(bu 2
@@ -144,6 +145,9 @@ Type: String (can be set multiple times)
.RE
.P
The package to install for npm help \fBexec\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcall\fP
.RS 0
.IP \(bu 2
@@ -161,6 +165,9 @@ custom command to be run along with the installed packages\.
npm exec \-\-package yo \-\-package generator\-node \-\-call "yo node"
.fi
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -191,6 +198,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -204,6 +214,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS Examples
diff --git a/deps/npm/man/man1/npm-explain.1 b/deps/npm/man/man1/npm-explain.1
index dee7149611..90ec6eb458 100644
--- a/deps/npm/man/man1/npm-explain.1
+++ b/deps/npm/man/man1/npm-explain.1
@@ -1,4 +1,4 @@
-.TH "NPM\-EXPLAIN" "1" "July 2021" "" ""
+.TH "NPM\-EXPLAIN" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-explain\fR \- Explain installed packages
.SS Synopsis
@@ -57,6 +57,7 @@ node_modules/nyc/node_modules/find\-up
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -75,6 +76,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -105,6 +109,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-explore.1 b/deps/npm/man/man1/npm-explore.1
index 4782519127..0f7ef716ff 100644
--- a/deps/npm/man/man1/npm-explore.1
+++ b/deps/npm/man/man1/npm-explore.1
@@ -1,4 +1,4 @@
-.TH "NPM\-EXPLORE" "1" "July 2021" "" ""
+.TH "NPM\-EXPLORE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-explore\fR \- Browse an installed package
.SS Synopsis
@@ -31,6 +31,7 @@ sure to use \fBnpm rebuild <pkg>\fP if you make any changes\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBshell\fP
.RS 0
.IP \(bu 2
@@ -42,6 +43,9 @@ Type: String
.RE
.P
The shell to run for the \fBnpm explore\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-find-dupes.1 b/deps/npm/man/man1/npm-find-dupes.1
index 285dc3128d..82bc51c97d 100644
--- a/deps/npm/man/man1/npm-find-dupes.1
+++ b/deps/npm/man/man1/npm-find-dupes.1
@@ -1,4 +1,4 @@
-.TH "NPM\-FIND\-DUPES" "1" "July 2021" "" ""
+.TH "NPM\-FIND\-DUPES" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-find-dupes\fR \- Find duplication in the package tree
.SS Synopsis
@@ -15,6 +15,7 @@ duplications, without actually changing the package tree\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -30,6 +31,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -43,6 +47,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -65,6 +72,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -80,6 +90,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -101,6 +114,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -116,6 +132,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -129,6 +148,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -144,6 +166,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -156,6 +181,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -186,6 +214,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -199,6 +230,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-fund.1 b/deps/npm/man/man1/npm-fund.1
index a1fc486010..8beb4cca26 100644
--- a/deps/npm/man/man1/npm-fund.1
+++ b/deps/npm/man/man1/npm-fund.1
@@ -1,4 +1,4 @@
-.TH "NPM\-FUND" "1" "July 2021" "" ""
+.TH "NPM\-FUND" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-fund\fR \- Retrieve funding information
.SS Synopsis
@@ -63,6 +63,7 @@ test\-workspaces\-fund@1\.0\.0
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -81,6 +82,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbrowser\fP
.RS 0
.IP \(bu 2
@@ -96,6 +100,9 @@ Set to \fBfalse\fP to suppress browser behavior and instead print urls to
terminal\.
.P
Set to \fBtrue\fP to use default system URL opener\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBunicode\fP
.RS 0
.IP \(bu 2
@@ -108,6 +115,9 @@ Type: Boolean
.P
When set to true, npm uses unicode characters in the tree output\. When
false, it uses ascii characters instead of unicode glyphs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -138,6 +148,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBwhich\fP
.RS 0
.IP \(bu 2
@@ -148,6 +161,9 @@ Type: null or Number
.RE
.P
If there are multiple funding sources, which 1\-indexed source URL to open\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SH See Also
diff --git a/deps/npm/man/man1/npm-help-search.1 b/deps/npm/man/man1/npm-help-search.1
index ca85068745..5d7bd8fd58 100644
--- a/deps/npm/man/man1/npm-help-search.1
+++ b/deps/npm/man/man1/npm-help-search.1
@@ -1,4 +1,4 @@
-.TH "NPM\-HELP\-SEARCH" "1" "July 2021" "" ""
+.TH "NPM\-HELP\-SEARCH" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-help-search\fR \- Search npm help documentation
.SS Synopsis
@@ -23,6 +23,7 @@ directly\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -33,6 +34,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-help.1 b/deps/npm/man/man1/npm-help.1
index 7564968067..6d7fafc4b8 100644
--- a/deps/npm/man/man1/npm-help.1
+++ b/deps/npm/man/man1/npm-help.1
@@ -1,4 +1,4 @@
-.TH "NPM\-HELP" "1" "July 2021" "" ""
+.TH "NPM\-HELP" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-help\fR \- Get help on npm
.SS Synopsis
@@ -21,6 +21,7 @@ topic, so unique matches are equivalent to specifying a topic name\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBviewer\fP
.RS 0
.IP \(bu 2
@@ -33,6 +34,9 @@ Type: String
The program to use to view help content\.
.P
Set to \fB"browser"\fP to view html help content in the default web browser\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-hook.1 b/deps/npm/man/man1/npm-hook.1
index 52dd622c00..6135a720b5 100644
--- a/deps/npm/man/man1/npm-hook.1
+++ b/deps/npm/man/man1/npm-hook.1
@@ -1,4 +1,4 @@
-.TH "NPM\-HOOK" "1" "July 2021" "" ""
+.TH "NPM\-HOOK" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-hook\fR \- Manage registry hooks
.SS Synopsis
@@ -96,6 +96,7 @@ $ npm hook rm id\-deadbeef
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -106,6 +107,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -120,6 +124,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-init.1 b/deps/npm/man/man1/npm-init.1
index bce9c09f6e..010f06a883 100644
--- a/deps/npm/man/man1/npm-init.1
+++ b/deps/npm/man/man1/npm-init.1
@@ -1,4 +1,4 @@
-.TH "NPM\-INIT" "1" "July 2021" "" ""
+.TH "NPM\-INIT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-init\fR \- Create a package\.json file
.SS Synopsis
@@ -167,6 +167,7 @@ dot to represent the current directory in that context, e\.g: \fBreact\-app \.\f
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fByes\fP
.RS 0
.IP \(bu 2
@@ -178,6 +179,9 @@ Type: null or Boolean
.P
Automatically answer "yes" to any prompts that npm might print on the
command line\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBforce\fP
.RS 0
.IP \(bu 2
@@ -218,6 +222,9 @@ Allow clobbering existing values in \fBnpm pkg\fP
.P
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -248,6 +255,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -261,6 +271,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-install-ci-test.1 b/deps/npm/man/man1/npm-install-ci-test.1
index b2fad00b06..922ea545d1 100644
--- a/deps/npm/man/man1/npm-install-ci-test.1
+++ b/deps/npm/man/man1/npm-install-ci-test.1
@@ -1,4 +1,4 @@
-.TH "NPM\-INSTALL\-CI\-TEST" "1" "July 2021" "" ""
+.TH "NPM\-INSTALL\-CI\-TEST" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-install-ci-test\fR \- Install a project with a clean slate and run tests
.SS Synopsis
@@ -16,6 +16,7 @@ This command runs \fBnpm ci\fP followed immediately by \fBnpm test\fP\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -29,6 +30,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -44,6 +48,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -55,6 +62,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-install-test.1 b/deps/npm/man/man1/npm-install-test.1
index 0b403e8fee..b1e4a43ef8 100644
--- a/deps/npm/man/man1/npm-install-test.1
+++ b/deps/npm/man/man1/npm-install-test.1
@@ -1,4 +1,4 @@
-.TH "NPM\-INSTALL\-TEST" "1" "July 2021" "" ""
+.TH "NPM\-INSTALL\-TEST" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-install-test\fR \- Install package(s) and run tests
.SS Synopsis
@@ -25,6 +25,7 @@ takes exactly the same arguments as \fBnpm install\fP\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBsave\fP
.RS 0
.IP \(bu 2
@@ -38,6 +39,9 @@ Save installed packages to a package\.json file as dependencies\.
.P
When used with the \fBnpm rm\fP command, removes the dependency from
package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-exact\fP
.RS 0
.IP \(bu 2
@@ -49,6 +53,9 @@ Type: Boolean
.P
Dependencies saved to package\.json will be configured with an exact version
rather than using npm's default semver range operator\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -71,6 +78,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -86,6 +96,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -99,6 +112,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -121,6 +137,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -136,6 +155,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -157,6 +179,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -172,6 +197,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -185,6 +213,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -200,6 +231,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -212,6 +246,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -228,6 +265,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -258,6 +298,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -271,6 +314,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-install.1 b/deps/npm/man/man1/npm-install.1
index 5ad3b9024f..3ebcf9c04b 100644
--- a/deps/npm/man/man1/npm-install.1
+++ b/deps/npm/man/man1/npm-install.1
@@ -1,4 +1,4 @@
-.TH "NPM\-INSTALL" "1" "July 2021" "" ""
+.TH "NPM\-INSTALL" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-install\fR \- Install a package
.SS Synopsis
@@ -427,6 +427,7 @@ does\.
These are some of the most common options related to installation\.
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBsave\fP
.RS 0
.IP \(bu 2
@@ -440,6 +441,9 @@ Save installed packages to a package\.json file as dependencies\.
.P
When used with the \fBnpm rm\fP command, removes the dependency from
package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-exact\fP
.RS 0
.IP \(bu 2
@@ -451,6 +455,9 @@ Type: Boolean
.P
Dependencies saved to package\.json will be configured with an exact version
rather than using npm's default semver range operator\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -473,6 +480,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -488,6 +498,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -501,6 +514,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -523,6 +539,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -538,6 +557,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -559,6 +581,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -574,6 +599,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -587,6 +615,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -602,6 +633,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -614,6 +648,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -630,6 +667,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -660,6 +700,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -673,6 +716,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS Algorithm
diff --git a/deps/npm/man/man1/npm-link.1 b/deps/npm/man/man1/npm-link.1
index 3527512232..2c6d3a86e6 100644
--- a/deps/npm/man/man1/npm-link.1
+++ b/deps/npm/man/man1/npm-link.1
@@ -1,4 +1,4 @@
-.TH "NPM\-LINK" "1" "July 2021" "" ""
+.TH "NPM\-LINK" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-link\fR \- Symlink a package folder
.SS Synopsis
@@ -115,6 +115,7 @@ workspace(s)\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBsave\fP
.RS 0
.IP \(bu 2
@@ -128,6 +129,9 @@ Save installed packages to a package\.json file as dependencies\.
.P
When used with the \fBnpm rm\fP command, removes the dependency from
package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-exact\fP
.RS 0
.IP \(bu 2
@@ -139,6 +143,9 @@ Type: Boolean
.P
Dependencies saved to package\.json will be configured with an exact version
rather than using npm's default semver range operator\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -161,6 +168,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -176,6 +186,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -189,6 +202,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -211,6 +227,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -226,6 +245,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -247,6 +269,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -262,6 +287,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -275,6 +303,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -290,6 +321,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -302,6 +336,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -318,6 +355,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -348,6 +388,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -361,6 +404,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-logout.1 b/deps/npm/man/man1/npm-logout.1
index 650e6f1b51..05c1e8c94c 100644
--- a/deps/npm/man/man1/npm-logout.1
+++ b/deps/npm/man/man1/npm-logout.1
@@ -1,4 +1,4 @@
-.TH "NPM\-LOGOUT" "1" "July 2021" "" ""
+.TH "NPM\-LOGOUT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-logout\fR \- Log out of the registry
.SS Synopsis
@@ -25,6 +25,7 @@ connected to that scope, if set\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -35,6 +36,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscope\fP
.RS 0
.IP \(bu 2
@@ -71,6 +75,9 @@ This will also cause \fBnpm init\fP to create a scoped package\.
npm init \-\-scope=@foo \-\-yes
.fi
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1
index 0c6d83ee6d..8dd999493a 100644
--- a/deps/npm/man/man1/npm-ls.1
+++ b/deps/npm/man/man1/npm-ls.1
@@ -1,4 +1,4 @@
-.TH "NPM\-LS" "1" "July 2021" "" ""
+.TH "NPM\-LS" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-ls\fR \- List installed packages
.SS Synopsis
@@ -26,7 +26,7 @@ example, running \fBnpm ls promzard\fP in npm's source tree will show:
.P
.RS 2
.nf
-npm@7\.20\.3 /path/to/npm
+npm@7\.21\.0 /path/to/npm
└─┬ init\-package\-json@0\.0\.4
└── promzard@0\.1\.5
.fi
@@ -72,6 +72,7 @@ least the default human\-readable \fBnpm ls\fP output in npm v8\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBall\fP
.RS 0
.IP \(bu 2
@@ -84,6 +85,9 @@ Type: Boolean
When running \fBnpm outdated\fP and \fBnpm ls\fP, setting \fB\-\-all\fP will show all
outdated or installed packages, rather than only those directly depended
upon by the current project\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -102,6 +106,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -112,6 +119,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -123,6 +133,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -145,6 +158,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdepth\fP
.RS 0
.IP \(bu 2
@@ -158,6 +174,9 @@ The depth to go when recursing packages for \fBnpm ls\fP\|\.
.P
If not set, \fBnpm ls\fP will show only the immediate dependencies of the root
project\. If \fB\-\-all\fP is set, then npm will show all dependencies by default\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -179,6 +198,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlink\fP
.RS 0
.IP \(bu 2
@@ -189,6 +211,9 @@ Type: Boolean
.RE
.P
Used with \fBnpm ls\fP, limiting output to only those packages that are linked\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\-only\fP
.RS 0
.IP \(bu 2
@@ -206,6 +231,9 @@ instead of checking \fBnode_modules\fP and downloading dependencies\.
.P
For \fBlist\fP this means the output will be based on the tree described by the
\fBpackage\-lock\.json\fP, rather than the contents of \fBnode_modules\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBunicode\fP
.RS 0
.IP \(bu 2
@@ -218,6 +246,9 @@ Type: Boolean
.P
When set to true, npm uses unicode characters in the tree output\. When
false, it uses ascii characters instead of unicode glyphs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -248,6 +279,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -261,6 +295,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-org.1 b/deps/npm/man/man1/npm-org.1
index ca4d12eb3b..4ad678e630 100644
--- a/deps/npm/man/man1/npm-org.1
+++ b/deps/npm/man/man1/npm-org.1
@@ -1,4 +1,4 @@
-.TH "NPM\-ORG" "1" "July 2021" "" ""
+.TH "NPM\-ORG" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-org\fR \- Manage orgs
.SS Synopsis
@@ -69,6 +69,7 @@ listing them, and finding specific ones and their roles\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -79,6 +80,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -93,6 +97,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -111,6 +118,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -122,6 +132,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-outdated.1 b/deps/npm/man/man1/npm-outdated.1
index 5bea638d57..20a06266e2 100644
--- a/deps/npm/man/man1/npm-outdated.1
+++ b/deps/npm/man/man1/npm-outdated.1
@@ -1,4 +1,4 @@
-.TH "NPM\-OUTDATED" "1" "July 2021" "" ""
+.TH "NPM\-OUTDATED" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-outdated\fR \- Check for outdated packages
.SS Synopsis
@@ -104,6 +104,7 @@ scratch or running \fBnpm update\fP will bring it up to spec\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBall\fP
.RS 0
.IP \(bu 2
@@ -116,6 +117,9 @@ Type: Boolean
When running \fBnpm outdated\fP and \fBnpm ls\fP, setting \fB\-\-all\fP will show all
outdated or installed packages, rather than only those directly depended
upon by the current project\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -134,6 +138,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -144,6 +151,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -155,6 +165,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -177,6 +190,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -207,6 +223,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-owner.1 b/deps/npm/man/man1/npm-owner.1
index 8e172d6955..12ec156e5d 100644
--- a/deps/npm/man/man1/npm-owner.1
+++ b/deps/npm/man/man1/npm-owner.1
@@ -1,4 +1,4 @@
-.TH "NPM\-OWNER" "1" "July 2021" "" ""
+.TH "NPM\-OWNER" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-owner\fR \- Manage package owners
.SS Synopsis
@@ -40,6 +40,7 @@ on the command line when changing ownership with \fB\-\-otp\fP\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -50,6 +51,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -64,6 +68,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-pack.1 b/deps/npm/man/man1/npm-pack.1
index 7402a53f7c..a51ed06653 100644
--- a/deps/npm/man/man1/npm-pack.1
+++ b/deps/npm/man/man1/npm-pack.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PACK" "1" "July 2021" "" ""
+.TH "NPM\-PACK" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-pack\fR \- Create a tarball from a package
.SS Synopsis
@@ -11,6 +11,7 @@ npm pack [[<@scope>/]<pkg>\.\.\.] [\-\-dry\-run] [\-\-json]
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -27,6 +28,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -45,6 +49,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpack\-destination\fP
.RS 0
.IP \(bu 2
@@ -55,6 +62,9 @@ Type: String
.RE
.P
Directory in which \fBnpm pack\fP will save tarballs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -85,6 +95,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -98,6 +111,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS Description
diff --git a/deps/npm/man/man1/npm-ping.1 b/deps/npm/man/man1/npm-ping.1
index 405ec2edac..b56a4aa16f 100644
--- a/deps/npm/man/man1/npm-ping.1
+++ b/deps/npm/man/man1/npm-ping.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PING" "1" "July 2021" "" ""
+.TH "NPM\-PING" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-ping\fR \- Ping npm registry
.SS Synopsis
@@ -31,6 +31,7 @@ Ping error: {*Detail about error}
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -41,6 +42,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-pkg.1 b/deps/npm/man/man1/npm-pkg.1
index 48044b58ae..0eec1ed55e 100644
--- a/deps/npm/man/man1/npm-pkg.1
+++ b/deps/npm/man/man1/npm-pkg.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PKG" "1" "July 2021" "" ""
+.TH "NPM\-PKG" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-pkg\fR \- Manages your package\.json
.SS Synopsis
@@ -14,7 +14,7 @@ npm pkg delete <field> [\.<subfield> \.\.\.]
.P
A command that automates the management of \fBpackage\.json\fP files\.
\fBnpm pkg\fP provide 3 different sub commands that allow you to modify or retrieve
-values for given object keys in your \fBpackge\.json\fP\|\.
+values for given object keys in your \fBpackage\.json\fP\|\.
.P
The syntax to retrieve and set fields is a dot separated representation of
the nested object properties to be found within your \fBpackage\.json\fP, it's the
@@ -176,6 +176,7 @@ npm pkg get name version \-\-ws
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBforce\fP
.RS 0
.IP \(bu 2
@@ -216,6 +217,9 @@ Allow clobbering existing values in \fBnpm pkg\fP
.P
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -234,6 +238,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -264,6 +271,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -277,6 +287,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SH See Also
.RS 0
diff --git a/deps/npm/man/man1/npm-prefix.1 b/deps/npm/man/man1/npm-prefix.1
index 369b13397b..cf0d14ecb9 100644
--- a/deps/npm/man/man1/npm-prefix.1
+++ b/deps/npm/man/man1/npm-prefix.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PREFIX" "1" "July 2021" "" ""
+.TH "NPM\-PREFIX" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-prefix\fR \- Display prefix
.SS Synopsis
@@ -36,6 +36,7 @@ npm prefix \-g
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -58,6 +59,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-profile.1 b/deps/npm/man/man1/npm-profile.1
index 930fbf2d94..e3a909f844 100644
--- a/deps/npm/man/man1/npm-profile.1
+++ b/deps/npm/man/man1/npm-profile.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PROFILE" "1" "July 2021" "" ""
+.TH "NPM\-PROFILE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-profile\fR \- Change settings on your registry profile
.SS Synopsis
@@ -85,6 +85,7 @@ Some of these commands may not be available on non npmjs\.com registries\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -95,6 +96,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -113,6 +117,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -124,6 +131,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -138,6 +148,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-prune.1 b/deps/npm/man/man1/npm-prune.1
index 41b7b00a5c..762a6dd871 100644
--- a/deps/npm/man/man1/npm-prune.1
+++ b/deps/npm/man/man1/npm-prune.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PRUNE" "1" "July 2021" "" ""
+.TH "NPM\-PRUNE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-prune\fR \- Remove extraneous packages
.SS Synopsis
@@ -33,6 +33,7 @@ this command can help clean up any resulting garbage\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -54,6 +55,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -70,6 +74,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -88,6 +95,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -118,6 +128,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -131,6 +144,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-publish.1 b/deps/npm/man/man1/npm-publish.1
index 69637ce979..34c8f806f6 100644
--- a/deps/npm/man/man1/npm-publish.1
+++ b/deps/npm/man/man1/npm-publish.1
@@ -1,4 +1,4 @@
-.TH "NPM\-PUBLISH" "1" "July 2021" "" ""
+.TH "NPM\-PUBLISH" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-publish\fR \- Publish a package
.SS Synopsis
@@ -107,6 +107,7 @@ built\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBtag\fP
.RS 0
.IP \(bu 2
@@ -124,6 +125,9 @@ command, if no explicit tag is given\.
.P
When used by the \fBnpm diff\fP command, this is the tag used to fetch the
tarball that will be compared with the local files by default\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaccess\fP
.RS 0
.IP \(bu 2
@@ -137,6 +141,15 @@ When publishing scoped packages, the access level defaults to \fBrestricted\fP\|
If you want your scoped package to be publicly viewable (and installable)
set \fB\-\-access=public\fP\|\. The only valid values for \fBaccess\fP are \fBpublic\fP and
\fBrestricted\fP\|\. Unscoped packages \fIalways\fR have an access level of \fBpublic\fP\|\.
+.P
+Note: Using the \fB\-\-access\fP flag on the \fBnpm publish\fP command will only set
+the package access level on the initial publish of the package\. Any
+subsequent \fBnpm publish\fP commands using the \fB\-\-access\fP flag will not have an
+effect to the access level\. To make changes to the access level after the
+initial publish use \fBnpm access\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -153,6 +166,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -167,6 +183,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -197,6 +216,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -210,6 +232,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-rebuild.1 b/deps/npm/man/man1/npm-rebuild.1
index 18b54c7bf7..595925449b 100644
--- a/deps/npm/man/man1/npm-rebuild.1
+++ b/deps/npm/man/man1/npm-rebuild.1
@@ -1,4 +1,4 @@
-.TH "NPM\-REBUILD" "1" "July 2021" "" ""
+.TH "NPM\-REBUILD" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-rebuild\fR \- Rebuild a package
.SS Synopsis
@@ -24,6 +24,7 @@ will be rebuilt\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -46,6 +47,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -61,6 +65,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -76,6 +83,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -106,6 +116,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -119,6 +132,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-repo.1 b/deps/npm/man/man1/npm-repo.1
index 1f19785ded..6026a1b274 100644
--- a/deps/npm/man/man1/npm-repo.1
+++ b/deps/npm/man/man1/npm-repo.1
@@ -1,4 +1,4 @@
-.TH "NPM\-REPO" "1" "July 2021" "" ""
+.TH "NPM\-REPO" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-repo\fR \- Open package repository page in the browser
.SS Synopsis
@@ -17,6 +17,7 @@ in the current folder and use the \fBrepository\fP property\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBbrowser\fP
.RS 0
.IP \(bu 2
@@ -32,6 +33,9 @@ Set to \fBfalse\fP to suppress browser behavior and instead print urls to
terminal\.
.P
Set to \fBtrue\fP to use default system URL opener\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -62,6 +66,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -75,6 +82,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-restart.1 b/deps/npm/man/man1/npm-restart.1
index fa47d52554..5cd3cadc44 100644
--- a/deps/npm/man/man1/npm-restart.1
+++ b/deps/npm/man/man1/npm-restart.1
@@ -1,4 +1,4 @@
-.TH "NPM\-RESTART" "1" "July 2021" "" ""
+.TH "NPM\-RESTART" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-restart\fR \- Restart a package
.SS Synopsis
@@ -49,6 +49,7 @@ postrestart
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -64,6 +65,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -75,6 +79,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-root.1 b/deps/npm/man/man1/npm-root.1
index 8472228650..4d04ccab31 100644
--- a/deps/npm/man/man1/npm-root.1
+++ b/deps/npm/man/man1/npm-root.1
@@ -1,4 +1,4 @@
-.TH "NPM\-ROOT" "1" "July 2021" "" ""
+.TH "NPM\-ROOT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-root\fR \- Display npm root
.SS Synopsis
@@ -25,6 +25,7 @@ echo "Global packages installed in: ${global_node_modules}"
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -47,6 +48,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-run-script.1 b/deps/npm/man/man1/npm-run-script.1
index ddb01fa95b..02bb61417f 100644
--- a/deps/npm/man/man1/npm-run-script.1
+++ b/deps/npm/man/man1/npm-run-script.1
@@ -1,4 +1,4 @@
-.TH "NPM\-RUN\-SCRIPT" "1" "July 2021" "" ""
+.TH "NPM\-RUN\-SCRIPT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-run-script\fR \- Run arbitrary package scripts
.SS Synopsis
@@ -148,6 +148,7 @@ packages\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -178,6 +179,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -191,6 +195,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBif\-present\fP
.RS 0
.IP \(bu 2
@@ -206,6 +213,9 @@ This option can be used when it's desirable to optionally run a script when
it's present and fail if the script fails\. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -221,6 +231,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -232,6 +245,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-search.1 b/deps/npm/man/man1/npm-search.1
index d500a4e8ef..c1d2a75e6a 100644
--- a/deps/npm/man/man1/npm-search.1
+++ b/deps/npm/man/man1/npm-search.1
@@ -1,4 +1,4 @@
-.TH "NPM\-SEARCH" "1" "July 2021" "" ""
+.TH "NPM\-SEARCH" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-search\fR \- Search for packages
.SS Synopsis
@@ -37,6 +37,7 @@ expression characters in most shells\.)
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -47,6 +48,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -65,6 +69,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcolor\fP
.RS 0
.IP \(bu 2
@@ -76,6 +83,9 @@ Type: "always" or Boolean
.P
If false, never shows colors\. If \fB"always"\fP then always shows colors\. If
true, then only prints color codes for tty file descriptors\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -87,6 +97,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdescription\fP
.RS 0
.IP \(bu 2
@@ -97,6 +110,9 @@ Type: Boolean
.RE
.P
Show the description in \fBnpm search\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchopts\fP
.RS 0
.IP \(bu 2
@@ -107,6 +123,9 @@ Type: String
.RE
.P
Space\-separated options that are always passed to search\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchexclude\fP
.RS 0
.IP \(bu 2
@@ -117,6 +136,9 @@ Type: String
.RE
.P
Space\-separated options that limit the results from search\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -127,6 +149,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprefer\-online\fP
.RS 0
.IP \(bu 2
@@ -138,6 +163,9 @@ Type: Boolean
.P
If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprefer\-offline\fP
.RS 0
.IP \(bu 2
@@ -150,6 +178,9 @@ Type: Boolean
If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server\. To force full offline mode, use
\fB\-\-offline\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBoffline\fP
.RS 0
.IP \(bu 2
@@ -161,6 +192,9 @@ Type: Boolean
.P
Force offline mode: no network requests will be done during install\. To
allow the CLI to fill in missing cache data, see \fB\-\-prefer\-offline\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-set-script.1 b/deps/npm/man/man1/npm-set-script.1
index 064dd267e2..50d42f6e24 100644
--- a/deps/npm/man/man1/npm-set-script.1
+++ b/deps/npm/man/man1/npm-set-script.1
@@ -1,4 +1,4 @@
-.TH "NPM\-SET\-SCRIPT" "1" "July 2021" "" ""
+.TH "NPM\-SET\-SCRIPT" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-set-script\fR \- Set tasks in the scripts section of package\.json
.SS Synopsis
@@ -32,6 +32,7 @@ npm set\-script [<script>] [<command>]
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -62,6 +63,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -75,6 +79,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-shrinkwrap.1 b/deps/npm/man/man1/npm-shrinkwrap.1
index 3f10fe80c9..4cf505d65d 100644
--- a/deps/npm/man/man1/npm-shrinkwrap.1
+++ b/deps/npm/man/man1/npm-shrinkwrap.1
@@ -1,4 +1,4 @@
-.TH "NPM\-SHRINKWRAP" "1" "July 2021" "" ""
+.TH "NPM\-SHRINKWRAP" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-shrinkwrap\fR \- Lock down dependency versions for publication
.SS Synopsis
diff --git a/deps/npm/man/man1/npm-star.1 b/deps/npm/man/man1/npm-star.1
index 1741619729..4da5668414 100644
--- a/deps/npm/man/man1/npm-star.1
+++ b/deps/npm/man/man1/npm-star.1
@@ -1,4 +1,4 @@
-.TH "NPM\-STAR" "1" "July 2021" "" ""
+.TH "NPM\-STAR" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-star\fR \- Mark your favorite packages
.SS Synopsis
@@ -30,6 +30,7 @@ You can see all your starred packages using npm help \fBstars\fP
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -40,6 +41,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBunicode\fP
.RS 0
.IP \(bu 2
@@ -52,6 +56,9 @@ Type: Boolean
.P
When set to true, npm uses unicode characters in the tree output\. When
false, it uses ascii characters instead of unicode glyphs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-stars.1 b/deps/npm/man/man1/npm-stars.1
index adb87c1c9c..b45cde640c 100644
--- a/deps/npm/man/man1/npm-stars.1
+++ b/deps/npm/man/man1/npm-stars.1
@@ -1,4 +1,4 @@
-.TH "NPM\-STARS" "1" "July 2021" "" ""
+.TH "NPM\-STARS" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-stars\fR \- View packages marked as favorites
.SS Synopsis
@@ -20,6 +20,7 @@ you will most certainly enjoy this command\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -30,6 +31,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-start.1 b/deps/npm/man/man1/npm-start.1
index 59c3806112..05a81c0334 100644
--- a/deps/npm/man/man1/npm-start.1
+++ b/deps/npm/man/man1/npm-start.1
@@ -1,4 +1,4 @@
-.TH "NPM\-START" "1" "July 2021" "" ""
+.TH "NPM\-START" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-start\fR \- Start a package
.SS Synopsis
@@ -48,6 +48,7 @@ npm start
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -63,6 +64,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -74,6 +78,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-stop.1 b/deps/npm/man/man1/npm-stop.1
index 2415db060f..356585874f 100644
--- a/deps/npm/man/man1/npm-stop.1
+++ b/deps/npm/man/man1/npm-stop.1
@@ -1,4 +1,4 @@
-.TH "NPM\-STOP" "1" "July 2021" "" ""
+.TH "NPM\-STOP" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-stop\fR \- Stop a package
.SS Synopsis
@@ -41,6 +41,7 @@ npm stop
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -56,6 +57,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -67,6 +71,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-team.1 b/deps/npm/man/man1/npm-team.1
index 54e27248b5..fc96e8aa48 100644
--- a/deps/npm/man/man1/npm-team.1
+++ b/deps/npm/man/man1/npm-team.1
@@ -1,4 +1,4 @@
-.TH "NPM\-TEAM" "1" "July 2021" "" ""
+.TH "NPM\-TEAM" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-team\fR \- Manage organization teams and team memberships
.SS Synopsis
@@ -105,6 +105,7 @@ use the \fBnpm access\fP command to grant or revoke the appropriate permissions\
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -115,6 +116,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -129,6 +133,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -140,6 +147,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -158,6 +168,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-test.1 b/deps/npm/man/man1/npm-test.1
index c84d9bd8d1..6eb0888077 100644
--- a/deps/npm/man/man1/npm-test.1
+++ b/deps/npm/man/man1/npm-test.1
@@ -1,4 +1,4 @@
-.TH "NPM\-TEST" "1" "July 2021" "" ""
+.TH "NPM\-TEST" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-test\fR \- Test a package
.SS Synopsis
@@ -38,6 +38,7 @@ npm test
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -53,6 +54,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -64,6 +68,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-token.1 b/deps/npm/man/man1/npm-token.1
index d24138b939..aa0daab47e 100644
--- a/deps/npm/man/man1/npm-token.1
+++ b/deps/npm/man/man1/npm-token.1
@@ -1,4 +1,4 @@
-.TH "NPM\-TOKEN" "1" "July 2021" "" ""
+.TH "NPM\-TOKEN" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-token\fR \- Manage your authentication tokens
.SS Synopsis
@@ -87,6 +87,7 @@ found in the normal \fBnpm token list\fP output\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBread\-only\fP
.RS 0
.IP \(bu 2
@@ -98,6 +99,9 @@ Type: Boolean
.P
This is used to mark a token as unable to publish when configuring limited
access tokens with the \fBnpm token create\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcidr\fP
.RS 0
.IP \(bu 2
@@ -109,6 +113,9 @@ Type: null or String (can be set multiple times)
.P
This is a list of CIDR address to be used when configuring limited access
tokens with the \fBnpm token create\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -119,6 +126,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -133,6 +143,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-uninstall.1 b/deps/npm/man/man1/npm-uninstall.1
index 22875c6cfb..4282fe1282 100644
--- a/deps/npm/man/man1/npm-uninstall.1
+++ b/deps/npm/man/man1/npm-uninstall.1
@@ -1,4 +1,4 @@
-.TH "NPM\-UNINSTALL" "1" "July 2021" "" ""
+.TH "NPM\-UNINSTALL" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-uninstall\fR \- Remove a package
.SS Synopsis
@@ -57,6 +57,7 @@ npm uninstall lodash \-\-no\-save
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBsave\fP
.RS 0
.IP \(bu 2
@@ -70,6 +71,9 @@ Save installed packages to a package\.json file as dependencies\.
.P
When used with the \fBnpm rm\fP command, removes the dependency from
package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -100,6 +104,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -113,6 +120,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-unpublish.1 b/deps/npm/man/man1/npm-unpublish.1
index edef7115fc..81d1e39733 100644
--- a/deps/npm/man/man1/npm-unpublish.1
+++ b/deps/npm/man/man1/npm-unpublish.1
@@ -1,10 +1,10 @@
-.TH "NPM\-UNPUBLISH" "1" "July 2021" "" ""
+.TH "NPM\-UNPUBLISH" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-unpublish\fR \- Remove a package from the registry
.SS Synopsis
.P
To learn more about how the npm registry treats unpublish, see our <a
-href="https://www\.npmjs\.com/policies/unpublish" target="_blank"
+href="https://docs\.npmjs\.com/policies/unpublish" target="_blank"
rel="noopener noreferrer"> unpublish policies</a>
.SS Unpublishing a single version of a package
.P
@@ -44,6 +44,7 @@ passed\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -60,6 +61,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBforce\fP
.RS 0
.IP \(bu 2
@@ -100,6 +104,9 @@ Allow clobbering existing values in \fBnpm pkg\fP
.P
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -130,6 +137,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -143,6 +153,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-unstar.1 b/deps/npm/man/man1/npm-unstar.1
index 29c18e8916..4702cca1a9 100644
--- a/deps/npm/man/man1/npm-unstar.1
+++ b/deps/npm/man/man1/npm-unstar.1
@@ -1,4 +1,4 @@
-.TH "NPM\-UNSTAR" "1" "July 2021" "" ""
+.TH "NPM\-UNSTAR" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-unstar\fR \- Remove an item from your favorite packages
.SS Synopsis
@@ -26,6 +26,7 @@ You can see all your starred packages using npm help \fBstars\fP
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -36,6 +37,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBunicode\fP
.RS 0
.IP \(bu 2
@@ -48,6 +52,9 @@ Type: Boolean
.P
When set to true, npm uses unicode characters in the tree output\. When
false, it uses ascii characters instead of unicode glyphs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -62,6 +69,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-update.1 b/deps/npm/man/man1/npm-update.1
index ca717f8d02..ed8633bd05 100644
--- a/deps/npm/man/man1/npm-update.1
+++ b/deps/npm/man/man1/npm-update.1
@@ -1,4 +1,4 @@
-.TH "NPM\-UPDATE" "1" "July 2021" "" ""
+.TH "NPM\-UPDATE" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-update\fR \- Update packages
.SS Synopsis
@@ -155,6 +155,7 @@ be \fIdowngraded\fR\|\.
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -177,6 +178,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -192,6 +196,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -205,6 +212,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -227,6 +237,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -242,6 +255,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -263,6 +279,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -278,6 +297,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -291,6 +313,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -306,6 +331,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -318,6 +346,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -334,6 +365,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -364,6 +398,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -377,6 +414,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm-version.1 b/deps/npm/man/man1/npm-version.1
index f798ed97a1..cdf50de20a 100644
--- a/deps/npm/man/man1/npm-version.1
+++ b/deps/npm/man/man1/npm-version.1
@@ -1,4 +1,4 @@
-.TH "NPM\-VERSION" "1" "July 2021" "" ""
+.TH "NPM\-VERSION" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-version\fR \- Bump a package version
.SS Synopsis
@@ -15,6 +15,7 @@ npm version [<newversion> | major | minor | patch | premajor | preminor | prepat
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBallow\-same\-version\fP
.RS 0
.IP \(bu 2
@@ -26,6 +27,9 @@ Type: Boolean
.P
Prevents throwing an error when \fBnpm version\fP is used to set the new version
to the same value as the current version\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcommit\-hooks\fP
.RS 0
.IP \(bu 2
@@ -36,6 +40,9 @@ Type: Boolean
.RE
.P
Run git commit hooks when using the \fBnpm version\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBgit\-tag\-version\fP
.RS 0
.IP \(bu 2
@@ -46,6 +53,9 @@ Type: Boolean
.RE
.P
Tag the commit when using the \fBnpm version\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -64,6 +74,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpreid\fP
.RS 0
.IP \(bu 2
@@ -75,6 +88,9 @@ Type: String
.P
The "prerelease identifier" to use as a prefix for the "prerelease" part of
a semver\. Like the \fBrc\fP in \fB1\.2\.0\-rc\.8\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsign\-git\-tag\fP
.RS 0
.IP \(bu 2
@@ -89,6 +105,9 @@ If set to true, then the \fBnpm version\fP command will tag the version using
.P
Note that git requires you to have set up GPG keys in your git configs for
this to work properly\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -119,6 +138,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -132,6 +154,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS Description
diff --git a/deps/npm/man/man1/npm-view.1 b/deps/npm/man/man1/npm-view.1
index a63cab9fee..a0bab36f21 100644
--- a/deps/npm/man/man1/npm-view.1
+++ b/deps/npm/man/man1/npm-view.1
@@ -1,4 +1,4 @@
-.TH "NPM\-VIEW" "1" "July 2021" "" ""
+.TH "NPM\-VIEW" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-view\fR \- View registry info
.SS Synopsis
@@ -114,6 +114,7 @@ npm view connect versions
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -132,6 +133,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -162,6 +166,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -175,6 +182,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS Output
diff --git a/deps/npm/man/man1/npm-whoami.1 b/deps/npm/man/man1/npm-whoami.1
index 506470abe2..f5dd6718fb 100644
--- a/deps/npm/man/man1/npm-whoami.1
+++ b/deps/npm/man/man1/npm-whoami.1
@@ -1,4 +1,4 @@
-.TH "NPM\-WHOAMI" "1" "July 2021" "" ""
+.TH "NPM\-WHOAMI" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm-whoami\fR \- Display npm username
.SS Synopsis
@@ -23,6 +23,7 @@ If logged into a registry that uses Basic Auth, then simply print the
.SS Configuration
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -33,6 +34,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See Also
diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1
index 725c286aae..a4ac45b5ef 100644
--- a/deps/npm/man/man1/npm.1
+++ b/deps/npm/man/man1/npm.1
@@ -1,4 +1,4 @@
-.TH "NPM" "1" "July 2021" "" ""
+.TH "NPM" "1" "August 2021" "" ""
.SH "NAME"
\fBnpm\fR \- javascript package manager
.SS Synopsis
@@ -10,7 +10,7 @@ npm <command> [args]
.RE
.SS Version
.P
-7\.20\.3
+7\.21\.0
.SS Description
.P
npm is the package manager for the Node JavaScript platform\. It puts
@@ -27,7 +27,7 @@ Run \fBnpm help\fP to get a list of available commands\.
npm comes preconfigured to use npm's public registry at
https://registry\.npmjs\.org by default\. Use of the npm public registry is
subject to terms of use available at
-https://www\.npmjs\.com/policies/terms\.
+https://docs\.npmjs\.com/policies/terms\.
.P
You can configure npm to use any compatible registry you like, and even
run your own registry\. Use of someone else's registry is governed by
diff --git a/deps/npm/man/man1/npx.1 b/deps/npm/man/man1/npx.1
index c58b481079..982127c8ad 100644
--- a/deps/npm/man/man1/npx.1
+++ b/deps/npm/man/man1/npx.1
@@ -1,4 +1,4 @@
-.TH "NPX" "1" "July 2021" "" ""
+.TH "NPX" "1" "August 2021" "" ""
.SH "NAME"
\fBnpx\fR \- Run a command from a local or remote npm package
.SS Synopsis
diff --git a/deps/npm/man/man5/folders.5 b/deps/npm/man/man5/folders.5
index 80b6db8074..de49122f3c 100644
--- a/deps/npm/man/man5/folders.5
+++ b/deps/npm/man/man5/folders.5
@@ -1,4 +1,4 @@
-.TH "FOLDERS" "5" "July 2021" "" ""
+.TH "FOLDERS" "5" "August 2021" "" ""
.SH "NAME"
\fBfolders\fR \- Folder Structures Used by npm
.SS Description
diff --git a/deps/npm/man/man5/install.5 b/deps/npm/man/man5/install.5
index 70b3d2632a..0759e770be 100644
--- a/deps/npm/man/man5/install.5
+++ b/deps/npm/man/man5/install.5
@@ -1,4 +1,4 @@
-.TH "INSTALL" "5" "July 2021" "" ""
+.TH "INSTALL" "5" "August 2021" "" ""
.SH "NAME"
\fBinstall\fR \- Download and install node and npm
.SS Description
diff --git a/deps/npm/man/man5/npm-shrinkwrap-json.5 b/deps/npm/man/man5/npm-shrinkwrap-json.5
index 008e6f3bec..2e3aa79adb 100644
--- a/deps/npm/man/man5/npm-shrinkwrap-json.5
+++ b/deps/npm/man/man5/npm-shrinkwrap-json.5
@@ -1,4 +1,4 @@
-.TH "NPM\-SHRINKWRAP\.JSON" "5" "July 2021" "" ""
+.TH "NPM\-SHRINKWRAP\.JSON" "5" "August 2021" "" ""
.SH "NAME"
\fBnpm-shrinkwrap.json\fR \- A publishable lockfile
.SS Description
diff --git a/deps/npm/man/man5/npmrc.5 b/deps/npm/man/man5/npmrc.5
index b0ee6ac4cf..84a0ffadbe 100644
--- a/deps/npm/man/man5/npmrc.5
+++ b/deps/npm/man/man5/npmrc.5
@@ -1,4 +1,4 @@
-.TH "NPMRC" "5" "July 2021" "" ""
+.TH "NPMRC" "5" "August 2021" "" ""
.SH "NAME"
\fBnpmrc\fR \- The npm config files
.SS Description
diff --git a/deps/npm/man/man5/package-json.5 b/deps/npm/man/man5/package-json.5
index 323394188a..7d4574186e 100644
--- a/deps/npm/man/man5/package-json.5
+++ b/deps/npm/man/man5/package-json.5
@@ -1,4 +1,4 @@
-.TH "PACKAGE\.JSON" "5" "July 2021" "" ""
+.TH "PACKAGE\.JSON" "5" "August 2021" "" ""
.SH "NAME"
\fBpackage.json\fR \- Specifics of npm's package\.json handling
.SS Description
@@ -314,17 +314,13 @@ Certain files are always included, regardless of settings:
.IP \(bu 2
\fBREADME\fP
.IP \(bu 2
-\fBCHANGES\fP / \fBCHANGELOG\fP / \fBHISTORY\fP
-.IP \(bu 2
\fBLICENSE\fP / \fBLICENCE\fP
.IP \(bu 2
-\fBNOTICE\fP
-.IP \(bu 2
The file in the "main" field
.RE
.P
-\fBREADME\fP, \fBCHANGES\fP, \fBLICENSE\fP & \fBNOTICE\fP can have any case and extension\.
+\fBREADME\fP & \fBLICENSE\fP can have any case and extension\.
.P
Conversely, some files are always ignored:
.RS 0
diff --git a/deps/npm/man/man5/package-lock-json.5 b/deps/npm/man/man5/package-lock-json.5
index 0a6b97fee7..18f968ee6d 100644
--- a/deps/npm/man/man5/package-lock-json.5
+++ b/deps/npm/man/man5/package-lock-json.5
@@ -1,4 +1,4 @@
-.TH "PACKAGE\-LOCK\.JSON" "5" "July 2021" "" ""
+.TH "PACKAGE\-LOCK\.JSON" "5" "August 2021" "" ""
.SH "NAME"
\fBpackage-lock.json\fR \- A manifestation of the manifest
.SS Description
diff --git a/deps/npm/man/man7/config.7 b/deps/npm/man/man7/config.7
index ac0a415f10..db69e6bb1f 100644
--- a/deps/npm/man/man7/config.7
+++ b/deps/npm/man/man7/config.7
@@ -1,4 +1,4 @@
-.TH "CONFIG" "7" "July 2021" "" ""
+.TH "CONFIG" "7" "August 2021" "" ""
.SH "NAME"
\fBconfig\fR \- More than you probably want to know about npm configuration
.SS Description
@@ -58,6 +58,7 @@ internal to npm, and are defaults if nothing else is specified\.
The following shorthands are parsed on the command\-line:
<!\-\- AUTOGENERATED CONFIG SHORTHANDS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.RS 0
.IP \(bu 2
\fB\-a\fP: \fB\-\-all\fP
@@ -139,6 +140,8 @@ The following shorthands are parsed on the command\-line:
\fB\-y\fP: \fB\-\-yes\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
<!\-\- AUTOGENERATED CONFIG SHORTHANDS END \-\->
.P
@@ -169,6 +172,7 @@ npm ls \-\-global \-\-parseable \-\-long \-\-loglevel info
.SS Config Settings
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS START \-\->
<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
.SS \fB_auth\fP
.RS 0
.IP \(bu 2
@@ -183,6 +187,9 @@ A basic\-auth string to use when authenticating against the npm registry\.
Warning: This should generally not be set via a command\-line option\. It is
safer to use a registry\-provided authentication bearer token stored in the
~/\.npmrc file by running \fBnpm login\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaccess\fP
.RS 0
.IP \(bu 2
@@ -196,6 +203,15 @@ When publishing scoped packages, the access level defaults to \fBrestricted\fP\|
If you want your scoped package to be publicly viewable (and installable)
set \fB\-\-access=public\fP\|\. The only valid values for \fBaccess\fP are \fBpublic\fP and
\fBrestricted\fP\|\. Unscoped packages \fIalways\fR have an access level of \fBpublic\fP\|\.
+.P
+Note: Using the \fB\-\-access\fP flag on the \fBnpm publish\fP command will only set
+the package access level on the initial publish of the package\. Any
+subsequent \fBnpm publish\fP commands using the \fB\-\-access\fP flag will not have an
+effect to the access level\. To make changes to the access level after the
+initial publish use \fBnpm access\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBall\fP
.RS 0
.IP \(bu 2
@@ -208,6 +224,9 @@ Type: Boolean
When running \fBnpm outdated\fP and \fBnpm ls\fP, setting \fB\-\-all\fP will show all
outdated or installed packages, rather than only those directly depended
upon by the current project\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBallow\-same\-version\fP
.RS 0
.IP \(bu 2
@@ -219,6 +238,9 @@ Type: Boolean
.P
Prevents throwing an error when \fBnpm version\fP is used to set the new version
to the same value as the current version\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\fP
.RS 0
.IP \(bu 2
@@ -232,6 +254,9 @@ When "true" submit audit reports alongside the current npm command to the
default registry and all registries configured for scopes\. See the
documentation for npm help \fBaudit\fP for details on what is
submitted\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBaudit\-level\fP
.RS 0
.IP \(bu 2
@@ -243,6 +268,9 @@ Type: null, "info", "low", "moderate", "high", "critical", or "none"
.P
The minimum level of vulnerability for \fBnpm audit\fP to exit with a non\-zero
exit code\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbefore\fP
.RS 0
.IP \(bu 2
@@ -261,6 +289,9 @@ If the requested version is a \fBdist\-tag\fP and the given tag does not pass th
\fB\-\-before\fP filter, the most recent version less than or equal to that tag
will be used\. For example, \fBfoo@latest\fP might install \fBfoo@1\.2\fP even though
\fBlatest\fP is \fB2\.0\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbin\-links\fP
.RS 0
.IP \(bu 2
@@ -276,6 +307,9 @@ executables\.
Set to false to have it not do this\. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBbrowser\fP
.RS 0
.IP \(bu 2
@@ -291,6 +325,9 @@ Set to \fBfalse\fP to suppress browser behavior and instead print urls to
terminal\.
.P
Set to \fBtrue\fP to use default system URL opener\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBca\fP
.RS 0
.IP \(bu 2
@@ -324,6 +361,9 @@ ca[]="\.\.\."
.RE
.P
See also the \fBstrict\-ssl\fP config\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcache\fP
.RS 0
.IP \(bu 2
@@ -335,6 +375,9 @@ Type: Path
.P
The location of npm's cache directory\. See npm help \fBnpm
cache\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcafile\fP
.RS 0
.IP \(bu 2
@@ -347,6 +390,9 @@ Type: Path
A path to a file containing one or multiple Certificate Authority signing
certificates\. Similar to the \fBca\fP setting, but allows for multiple CA's, as
well as for the CA information to be stored in a file on disk\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcall\fP
.RS 0
.IP \(bu 2
@@ -364,6 +410,9 @@ custom command to be run along with the installed packages\.
npm exec \-\-package yo \-\-package generator\-node \-\-call "yo node"
.fi
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcert\fP
.RS 0
.IP \(bu 2
@@ -385,6 +434,9 @@ cert="\-\-\-\-\-BEGIN CERTIFICATE\-\-\-\-\-\\nXXXX\\nXXXX\\n\-\-\-\-\-END CERTIF
.P
It is \fInot\fR the path to a certificate file (and there is no "certfile"
option)\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBci\-name\fP
.RS 0
.IP \(bu 2
@@ -398,6 +450,9 @@ Type: null or String
The name of a continuous integration system\. If not set explicitly, npm will
detect the current CI environment using the
\fB@npmcli/ci\-detect\fP \fIhttp://npm\.im/@npmcli/ci\-detect\fR module\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcidr\fP
.RS 0
.IP \(bu 2
@@ -409,6 +464,9 @@ Type: null or String (can be set multiple times)
.P
This is a list of CIDR address to be used when configuring limited access
tokens with the \fBnpm token create\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcolor\fP
.RS 0
.IP \(bu 2
@@ -420,6 +478,9 @@ Type: "always" or Boolean
.P
If false, never shows colors\. If \fB"always"\fP then always shows colors\. If
true, then only prints color codes for tty file descriptors\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcommit\-hooks\fP
.RS 0
.IP \(bu 2
@@ -430,6 +491,9 @@ Type: Boolean
.RE
.P
Run git commit hooks when using the \fBnpm version\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdepth\fP
.RS 0
.IP \(bu 2
@@ -443,6 +507,9 @@ The depth to go when recursing packages for \fBnpm ls\fP\|\.
.P
If not set, \fBnpm ls\fP will show only the immediate dependencies of the root
project\. If \fB\-\-all\fP is set, then npm will show all dependencies by default\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdescription\fP
.RS 0
.IP \(bu 2
@@ -453,6 +520,9 @@ Type: Boolean
.RE
.P
Show the description in \fBnpm search\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\fP
.RS 0
.IP \(bu 2
@@ -463,6 +533,9 @@ Type: String (can be set multiple times)
.RE
.P
Define arguments to compare in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-dst\-prefix\fP
.RS 0
.IP \(bu 2
@@ -473,6 +546,9 @@ Type: String
.RE
.P
Destination prefix to be used in \fBnpm diff\fP output\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-ignore\-all\-space\fP
.RS 0
.IP \(bu 2
@@ -483,6 +559,9 @@ Type: Boolean
.RE
.P
Ignore whitespace when comparing lines in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-name\-only\fP
.RS 0
.IP \(bu 2
@@ -493,6 +572,9 @@ Type: Boolean
.RE
.P
Prints only filenames when using \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-no\-prefix\fP
.RS 0
.IP \(bu 2
@@ -506,6 +588,9 @@ Do not show any source or destination prefix in \fBnpm diff\fP output\.
.P
Note: this causes \fBnpm diff\fP to ignore the \fB\-\-diff\-src\-prefix\fP and
\fB\-\-diff\-dst\-prefix\fP configs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-src\-prefix\fP
.RS 0
.IP \(bu 2
@@ -516,6 +601,9 @@ Type: String
.RE
.P
Source prefix to be used in \fBnpm diff\fP output\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-text\fP
.RS 0
.IP \(bu 2
@@ -526,6 +614,9 @@ Type: Boolean
.RE
.P
Treat all files as text in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdiff\-unified\fP
.RS 0
.IP \(bu 2
@@ -536,6 +627,9 @@ Type: Number
.RE
.P
The number of lines of context to print in \fBnpm diff\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdry\-run\fP
.RS 0
.IP \(bu 2
@@ -552,6 +646,9 @@ commands that modify your local installation, eg, \fBinstall\fP, \fBupdate\fP,
.P
Note: This is NOT honored by other network related commands, eg \fBdist\-tags\fP,
\fBowner\fP, etc\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBeditor\fP
.RS 0
.IP \(bu 2
@@ -563,6 +660,9 @@ Type: String
.RE
.P
The command to run for \fBnpm edit\fP and \fBnpm config edit\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBengine\-strict\fP
.RS 0
.IP \(bu 2
@@ -577,6 +677,9 @@ installing) any package that claims to not be compatible with the current
Node\.js version\.
.P
This can be overridden by setting the \fB\-\-force\fP flag\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfetch\-retries\fP
.RS 0
.IP \(bu 2
@@ -591,6 +694,9 @@ from the registry\.
.P
npm will retry idempotent read requests to the registry in the case of
network failures or 5xx HTTP errors\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfetch\-retry\-factor\fP
.RS 0
.IP \(bu 2
@@ -601,6 +707,9 @@ Type: Number
.RE
.P
The "factor" config for the \fBretry\fP module to use when fetching packages\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfetch\-retry\-maxtimeout\fP
.RS 0
.IP \(bu 2
@@ -612,6 +721,9 @@ Type: Number
.P
The "maxTimeout" config for the \fBretry\fP module to use when fetching
packages\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfetch\-retry\-mintimeout\fP
.RS 0
.IP \(bu 2
@@ -623,6 +735,9 @@ Type: Number
.P
The "minTimeout" config for the \fBretry\fP module to use when fetching
packages\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfetch\-timeout\fP
.RS 0
.IP \(bu 2
@@ -633,6 +748,9 @@ Type: Number
.RE
.P
The maximum amount of time to wait for HTTP requests to complete\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBforce\fP
.RS 0
.IP \(bu 2
@@ -673,6 +791,9 @@ Allow clobbering existing values in \fBnpm pkg\fP
.P
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBforeground\-scripts\fP
.RS 0
.IP \(bu 2
@@ -688,6 +809,9 @@ input, output, and error with the main npm process\.
.P
Note that this will generally make installs run slower, and be much noisier,
but can be useful for debugging\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBformat\-package\-lock\fP
.RS 0
.IP \(bu 2
@@ -699,6 +823,9 @@ Type: Boolean
.P
Format \fBpackage\-lock\.json\fP or \fBnpm\-shrinkwrap\.json\fP as a human readable
file\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBfund\fP
.RS 0
.IP \(bu 2
@@ -711,6 +838,9 @@ Type: Boolean
When "true" displays the message at the end of each \fBnpm install\fP
acknowledging the number of dependencies looking for funding\. See npm help \fBnpm
fund\fP for details\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBgit\fP
.RS 0
.IP \(bu 2
@@ -722,6 +852,9 @@ Type: String
.P
The command to use for git commands\. If git is installed on the computer,
but is not in the \fBPATH\fP, then set this to the full path to the git binary\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBgit\-tag\-version\fP
.RS 0
.IP \(bu 2
@@ -732,6 +865,9 @@ Type: Boolean
.RE
.P
Tag the commit when using the \fBnpm version\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\fP
.RS 0
.IP \(bu 2
@@ -754,6 +890,9 @@ bin files are linked to \fB{prefix}/bin\fP
man pages are linked to \fB{prefix}/share/man\fP
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobal\-style\fP
.RS 0
.IP \(bu 2
@@ -769,6 +908,9 @@ direct dependencies will show in \fBnode_modules\fP and everything they depend
on will be flattened in their \fBnode_modules\fP folders\. This obviously will
eliminate some deduping\. If used with \fBlegacy\-bundling\fP, \fBlegacy\-bundling\fP
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBglobalconfig\fP
.RS 0
.IP \(bu 2
@@ -780,6 +922,9 @@ Type: Path
.RE
.P
The config file to read for global config options\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBheading\fP
.RS 0
.IP \(bu 2
@@ -790,6 +935,9 @@ Type: String
.RE
.P
The string that starts all the debugging log output\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBhttps\-proxy\fP
.RS 0
.IP \(bu 2
@@ -803,6 +951,9 @@ A proxy to use for outgoing https requests\. If the \fBHTTPS_PROXY\fP or
\fBhttps_proxy\fP or \fBHTTP_PROXY\fP or \fBhttp_proxy\fP environment variables are set,
proxy settings will be honored by the underlying \fBmake\-fetch\-happen\fP
library\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBif\-present\fP
.RS 0
.IP \(bu 2
@@ -818,6 +969,9 @@ This option can be used when it's desirable to optionally run a script when
it's present and fail if the script fails\. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBignore\-scripts\fP
.RS 0
.IP \(bu 2
@@ -833,6 +987,9 @@ Note that commands explicitly intended to run a particular script, such as
\fBnpm start\fP, \fBnpm stop\fP, \fBnpm restart\fP, \fBnpm test\fP, and \fBnpm run\-script\fP
will still run their intended script if \fBignore\-scripts\fP is set, but they
will \fInot\fR run any pre\- or post\-scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinclude\fP
.RS 0
.IP \(bu 2
@@ -848,6 +1005,9 @@ This is the inverse of \fB\-\-omit=<type>\fP\|\.
.P
Dependency types specified in \fB\-\-include\fP will not be omitted, regardless of
the order in which omit/include are specified on the command\-line\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinclude\-staged\fP
.RS 0
.IP \(bu 2
@@ -861,6 +1021,9 @@ Allow installing "staged" published packages, as defined by npm RFC PR
#92 \fIhttps://github\.com/npm/rfcs/pull/92\fR\|\.
.P
This is experimental, and not implemented by the npm public registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-author\-email\fP
.RS 0
.IP \(bu 2
@@ -871,6 +1034,9 @@ Type: String
.RE
.P
The value \fBnpm init\fP should use by default for the package author's email\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-author\-name\fP
.RS 0
.IP \(bu 2
@@ -881,6 +1047,9 @@ Type: String
.RE
.P
The value \fBnpm init\fP should use by default for the package author's name\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-author\-url\fP
.RS 0
.IP \(bu 2
@@ -892,6 +1061,9 @@ Type: "" or URL
.P
The value \fBnpm init\fP should use by default for the package author's
homepage\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-license\fP
.RS 0
.IP \(bu 2
@@ -902,6 +1074,9 @@ Type: String
.RE
.P
The value \fBnpm init\fP should use by default for the package license\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-module\fP
.RS 0
.IP \(bu 2
@@ -915,6 +1090,9 @@ A module that will be loaded by the \fBnpm init\fP command\. See the
documentation for the
init\-package\-json \fIhttps://github\.com/npm/init\-package\-json\fR module for
more information, or npm help init\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\-version\fP
.RS 0
.IP \(bu 2
@@ -926,6 +1104,9 @@ Type: SemVer string
.P
The value that \fBnpm init\fP should use by default for the package version
number, if not already set in package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBjson\fP
.RS 0
.IP \(bu 2
@@ -944,6 +1125,9 @@ saving them to your \fBpackage\.json\fP\|\.
.RE
.P
Not supported by all npm commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBkey\fP
.RS 0
.IP \(bu 2
@@ -963,6 +1147,9 @@ key="\-\-\-\-\-BEGIN PRIVATE KEY\-\-\-\-\-\\nXXXX\\nXXXX\\n\-\-\-\-\-END PRIVATE
.RE
.P
It is \fInot\fR the path to a key file (and there is no "keyfile" option)\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-bundling\fP
.RS 0
.IP \(bu 2
@@ -976,6 +1163,9 @@ Causes npm to install the package such that versions of npm prior to 1\.4,
such as the one included with node 0\.8, can install the package\. This
eliminates all automatic deduping\. If used with \fBglobal\-style\fP this option
will be preferred\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlegacy\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -997,6 +1187,9 @@ This differs from \fB\-\-omit=peer\fP, in that \fB\-\-omit=peer\fP will avoid un
.P
Use of \fBlegacy\-peer\-deps\fP is not recommended, as it will not enforce the
\fBpeerDependencies\fP contract that meta\-dependencies may rely on\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlink\fP
.RS 0
.IP \(bu 2
@@ -1007,6 +1200,9 @@ Type: Boolean
.RE
.P
Used with \fBnpm ls\fP, limiting output to only those packages that are linked\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlocal\-address\fP
.RS 0
.IP \(bu 2
@@ -1018,6 +1214,9 @@ Type: IP Address
.P
The IP address of the local interface to use when making connections to the
npm registry\. Must be IPv4 in versions of Node prior to 0\.12\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlocation\fP
.RS 0
.IP \(bu 2
@@ -1029,6 +1228,9 @@ Type: "global", "user", or "project"
.RE
.P
When passed to \fBnpm config\fP this refers to which config file to use\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBloglevel\fP
.RS 0
.IP \(bu 2
@@ -1046,6 +1248,9 @@ Any logs of a higher level than the setting are shown\. The default is
"notice"\.
.P
See also the \fBforeground\-scripts\fP config\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlogs\-max\fP
.RS 0
.IP \(bu 2
@@ -1056,6 +1261,9 @@ Type: Number
.RE
.P
The maximum number of log files to store\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBlong\fP
.RS 0
.IP \(bu 2
@@ -1066,6 +1274,9 @@ Type: Boolean
.RE
.P
Show extended information in \fBls\fP, \fBsearch\fP, and \fBhelp\-search\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBmaxsockets\fP
.RS 0
.IP \(bu 2
@@ -1077,6 +1288,9 @@ Type: Number
.P
The maximum number of connections to use per origin (protocol/host/port
combination)\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBmessage\fP
.RS 0
.IP \(bu 2
@@ -1089,6 +1303,9 @@ Type: String
Commit message which is used by \fBnpm version\fP when creating version commit\.
.P
Any "%s" in the message will be replaced with the version number\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBnode\-options\fP
.RS 0
.IP \(bu 2
@@ -1101,6 +1318,9 @@ Type: null or String
Options to pass through to Node\.js via the \fBNODE_OPTIONS\fP environment
variable\. This does not impact how npm itself is executed but it does impact
how lifecycle scripts are called\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBnode\-version\fP
.RS 0
.IP \(bu 2
@@ -1111,6 +1331,9 @@ Type: SemVer string
.RE
.P
The node version to use when checking a package's \fBengines\fP setting\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBnoproxy\fP
.RS 0
.IP \(bu 2
@@ -1123,6 +1346,9 @@ Type: String (can be set multiple times)
Domain extensions that should bypass any proxies\.
.P
Also accepts a comma\-delimited string\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBnpm\-version\fP
.RS 0
.IP \(bu 2
@@ -1133,6 +1359,9 @@ Type: SemVer string
.RE
.P
The npm version to use when checking a package's \fBengines\fP setting\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBoffline\fP
.RS 0
.IP \(bu 2
@@ -1144,6 +1373,9 @@ Type: Boolean
.P
Force offline mode: no network requests will be done during install\. To
allow the CLI to fill in missing cache data, see \fB\-\-prefer\-offline\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBomit\fP
.RS 0
.IP \(bu 2
@@ -1165,6 +1397,9 @@ it will be included\.
.P
If the resulting omit list includes \fB\|'dev'\fP, then the \fBNODE_ENV\fP environment
variable will be set to \fB\|'production'\fP for all lifecycle scripts\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBotp\fP
.RS 0
.IP \(bu 2
@@ -1179,6 +1414,9 @@ when publishing or changing package permissions with \fBnpm access\fP\|\.
.P
If not set, and a registry response fails with a challenge for a one\-time
password, npm will prompt on the command line for one\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpack\-destination\fP
.RS 0
.IP \(bu 2
@@ -1189,6 +1427,9 @@ Type: String
.RE
.P
Directory in which \fBnpm pack\fP will save tarballs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\fP
.RS 0
.IP \(bu 2
@@ -1199,6 +1440,9 @@ Type: String (can be set multiple times)
.RE
.P
The package to install for npm help \fBexec\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\fP
.RS 0
.IP \(bu 2
@@ -1214,6 +1458,9 @@ will also prevent \fIwriting\fR \fBpackage\-lock\.json\fP if \fBsave\fP is true\
When package package\-locks are disabled, automatic pruning of extraneous
modules will also be disabled\. To remove extraneous modules with
package\-locks disabled use \fBnpm prune\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpackage\-lock\-only\fP
.RS 0
.IP \(bu 2
@@ -1231,6 +1478,9 @@ instead of checking \fBnode_modules\fP and downloading dependencies\.
.P
For \fBlist\fP this means the output will be based on the tree described by the
\fBpackage\-lock\.json\fP, rather than the contents of \fBnode_modules\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBparseable\fP
.RS 0
.IP \(bu 2
@@ -1242,6 +1492,9 @@ Type: Boolean
.P
Output parseable results from commands that write to standard output\. For
\fBnpm search\fP, this will be tab\-separated table format\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprefer\-offline\fP
.RS 0
.IP \(bu 2
@@ -1254,6 +1507,9 @@ Type: Boolean
If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server\. To force full offline mode, use
\fB\-\-offline\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprefer\-online\fP
.RS 0
.IP \(bu 2
@@ -1265,6 +1521,9 @@ Type: Boolean
.P
If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprefix\fP
.RS 0
.IP \(bu 2
@@ -1278,6 +1537,9 @@ Type: Path
.P
The location to install global items\. If set on the command line, then it
forces non\-global commands to run in the specified folder\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBpreid\fP
.RS 0
.IP \(bu 2
@@ -1289,6 +1551,9 @@ Type: String
.P
The "prerelease identifier" to use as a prefix for the "prerelease" part of
a semver\. Like the \fBrc\fP in \fB1\.2\.0\-rc\.8\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBprogress\fP
.RS 0
.IP \(bu 2
@@ -1302,6 +1567,9 @@ When set to \fBtrue\fP, npm will display a progress bar during time intensive
operations, if \fBprocess\.stderr\fP is a TTY\.
.P
Set to \fBfalse\fP to suppress the progress bar\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBproxy\fP
.RS 0
.IP \(bu 2
@@ -1314,6 +1582,9 @@ Type: null, false, or URL
A proxy to use for outgoing http requests\. If the \fBHTTP_PROXY\fP or
\fBhttp_proxy\fP environment variables are set, proxy settings will be honored
by the underlying \fBrequest\fP library\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBread\-only\fP
.RS 0
.IP \(bu 2
@@ -1325,6 +1596,9 @@ Type: Boolean
.P
This is used to mark a token as unable to publish when configuring limited
access tokens with the \fBnpm token create\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBrebuild\-bundle\fP
.RS 0
.IP \(bu 2
@@ -1335,6 +1609,9 @@ Type: Boolean
.RE
.P
Rebuild bundled dependencies after installation\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBregistry\fP
.RS 0
.IP \(bu 2
@@ -1345,6 +1622,9 @@ Type: URL
.RE
.P
The base URL of the npm registry\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\fP
.RS 0
.IP \(bu 2
@@ -1358,6 +1638,9 @@ Save installed packages to a package\.json file as dependencies\.
.P
When used with the \fBnpm rm\fP command, removes the dependency from
package\.json\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-bundle\fP
.RS 0
.IP \(bu 2
@@ -1372,6 +1655,9 @@ If a package would be saved at install time by the use of \fB\-\-save\fP,
\fBbundleDependencies\fP list\.
.P
Ignore if \fB\-\-save\-peer\fP is set, since peerDependencies cannot be bundled\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-dev\fP
.RS 0
.IP \(bu 2
@@ -1382,6 +1668,9 @@ Type: Boolean
.RE
.P
Save installed packages to a package\.json file as \fBdevDependencies\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-exact\fP
.RS 0
.IP \(bu 2
@@ -1393,6 +1682,9 @@ Type: Boolean
.P
Dependencies saved to package\.json will be configured with an exact version
rather than using npm's default semver range operator\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-optional\fP
.RS 0
.IP \(bu 2
@@ -1403,6 +1695,9 @@ Type: Boolean
.RE
.P
Save installed packages to a package\.json file as \fBoptionalDependencies\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-peer\fP
.RS 0
.IP \(bu 2
@@ -1413,6 +1708,9 @@ Type: Boolean
.RE
.P
Save installed packages\. to a package\.json file as \fBpeerDependencies\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-prefix\fP
.RS 0
.IP \(bu 2
@@ -1429,6 +1727,9 @@ For example if a package has version \fB1\.2\.3\fP, by default its version is se
to \fB^1\.2\.3\fP which allows minor upgrades for that package, but after \fBnpm
config set save\-prefix='~'\fP it would be set to \fB~1\.2\.3\fP which only allows
patch upgrades\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsave\-prod\fP
.RS 0
.IP \(bu 2
@@ -1444,6 +1745,9 @@ you want to move it to be a non\-optional production dependency\.
.P
This is the default behavior if \fB\-\-save\fP is true, and neither \fB\-\-save\-dev\fP
or \fB\-\-save\-optional\fP are true\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscope\fP
.RS 0
.IP \(bu 2
@@ -1480,6 +1784,9 @@ This will also cause \fBnpm init\fP to create a scoped package\.
npm init \-\-scope=@foo \-\-yes
.fi
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBscript\-shell\fP
.RS 0
.IP \(bu 2
@@ -1491,6 +1798,9 @@ Type: null or String
.P
The shell to use for scripts run with the \fBnpm exec\fP, \fBnpm run\fP and \fBnpm
init <pkg>\fP commands\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchexclude\fP
.RS 0
.IP \(bu 2
@@ -1501,6 +1811,9 @@ Type: String
.RE
.P
Space\-separated options that limit the results from search\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchlimit\fP
.RS 0
.IP \(bu 2
@@ -1512,6 +1825,9 @@ Type: Number
.P
Number of items to limit search results to\. Will not apply at all to legacy
searches\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchopts\fP
.RS 0
.IP \(bu 2
@@ -1522,6 +1838,9 @@ Type: String
.RE
.P
Space\-separated options that are always passed to search\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsearchstaleness\fP
.RS 0
.IP \(bu 2
@@ -1533,6 +1852,9 @@ Type: Number
.P
The age of the cache, in seconds, before another registry request is made if
using legacy search endpoint\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBshell\fP
.RS 0
.IP \(bu 2
@@ -1544,6 +1866,9 @@ Type: String
.RE
.P
The shell to run for the \fBnpm explore\fP command\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsign\-git\-commit\fP
.RS 0
.IP \(bu 2
@@ -1558,6 +1883,9 @@ version using \fB\-S\fP to add a signature\.
.P
Note that git requires you to have set up GPG keys in your git configs for
this to work properly\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsign\-git\-tag\fP
.RS 0
.IP \(bu 2
@@ -1572,6 +1900,9 @@ If set to true, then the \fBnpm version\fP command will tag the version using
.P
Note that git requires you to have set up GPG keys in your git configs for
this to work properly\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-peer\-deps\fP
.RS 0
.IP \(bu 2
@@ -1594,6 +1925,9 @@ the range set in their package's \fBpeerDependencies\fP object\.
When such and override is performed, a warning is printed, explaining the
conflict and the packages involved\. If \fB\-\-strict\-peer\-deps\fP is set, then
this warning is treated as a failure\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBstrict\-ssl\fP
.RS 0
.IP \(bu 2
@@ -1607,6 +1941,9 @@ Whether or not to do SSL key validation when making requests to the registry
via https\.
.P
See also the \fBca\fP config\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBtag\fP
.RS 0
.IP \(bu 2
@@ -1624,6 +1961,9 @@ command, if no explicit tag is given\.
.P
When used by the \fBnpm diff\fP command, this is the tag used to fetch the
tarball that will be compared with the local files by default\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBtag\-version\-prefix\fP
.RS 0
.IP \(bu 2
@@ -1640,6 +1980,9 @@ it to the empty string: \fB""\fP\|\.
Because other tools may rely on the convention that npm version tags look
like \fBv1\.0\.0\fP, \fIonly use this property if it is absolutely necessary\fR\|\. In
particular, use care when overriding this setting for public packages\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBtiming\fP
.RS 0
.IP \(bu 2
@@ -1655,6 +1998,9 @@ successfully\. \fB_timing\.json\fP is a newline delimited list of JSON objects\.
.P
You can quickly view it with this json \fIhttps://npm\.im/json\fR command line:
\fBnpm exec \-\- json \-g < ~/\.npm/_timing\.json\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBumask\fP
.RS 0
.IP \(bu 2
@@ -1678,6 +2024,9 @@ rather adds the \fB\-\-umask\fP config to it\.
Thus, the effective default umask value on most POSIX systems is 0o22,
meaning that folders and executables are created with a mode of 0o755 and
other files are created with a mode of 0o644\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBunicode\fP
.RS 0
.IP \(bu 2
@@ -1690,6 +2039,9 @@ Type: Boolean
.P
When set to true, npm uses unicode characters in the tree output\. When
false, it uses ascii characters instead of unicode glyphs\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBupdate\-notifier\fP
.RS 0
.IP \(bu 2
@@ -1701,6 +2053,9 @@ Type: Boolean
.P
Set to false to suppress the update notification when using an older version
of npm than the latest\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBusage\fP
.RS 0
.IP \(bu 2
@@ -1711,6 +2066,9 @@ Type: Boolean
.RE
.P
Show short usage output about the command specified\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBuser\-agent\fP
.RS 0
.IP \(bu 2
@@ -1740,6 +2098,9 @@ are set\.
an empty string if \fBci\-name\fP is empty\.
.RE
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBuserconfig\fP
.RS 0
.IP \(bu 2
@@ -1754,6 +2115,9 @@ The location of user\-level configuration settings\.
This may be overridden by the \fBnpm_config_userconfig\fP environment variable
or the \fB\-\-userconfig\fP command line option, but may \fInot\fR be overridden by
settings in the \fBglobalconfig\fP file\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBversion\fP
.RS 0
.IP \(bu 2
@@ -1766,6 +2130,9 @@ Type: Boolean
If true, output the npm version and exit successfully\.
.P
Only relevant when specified explicitly on the command line\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBversions\fP
.RS 0
.IP \(bu 2
@@ -1780,6 +2147,9 @@ the version in the current working directory's \fBpackage\.json\fP file if one
exists, and exit successfully\.
.P
Only relevant when specified explicitly on the command line\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBviewer\fP
.RS 0
.IP \(bu 2
@@ -1792,6 +2162,9 @@ Type: String
The program to use to view help content\.
.P
Set to \fB"browser"\fP to view html help content in the default web browser\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBwhich\fP
.RS 0
.IP \(bu 2
@@ -1802,6 +2175,9 @@ Type: null or Number
.RE
.P
If there are multiple funding sources, which 1\-indexed source URL to open\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspace\fP
.RS 0
.IP \(bu 2
@@ -1832,6 +2208,9 @@ workspace which does not yet exist, to create the folder and set it up as a
brand new workspace within the project\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBworkspaces\fP
.RS 0
.IP \(bu 2
@@ -1845,6 +2224,9 @@ Enable running a command in the context of \fBall\fR the configured
workspaces\.
.P
This value is not exported to the environment for child processes\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fByes\fP
.RS 0
.IP \(bu 2
@@ -1856,6 +2238,9 @@ Type: null or Boolean
.P
Automatically answer "yes" to any prompts that npm might print on the
command line\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBalso\fP
.RS 0
.IP \(bu 2
@@ -1868,6 +2253,9 @@ DEPRECATED: Please use \-\-include=dev instead\.
.RE
.P
When set to \fBdev\fP or \fBdevelopment\fP, this is an alias for \fB\-\-include=dev\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBauth\-type\fP
.RS 0
.IP \(bu 2
@@ -1881,6 +2269,9 @@ in a future version of npm in favor of web\-based login\.
.RE
.P
What authentication strategy to use with \fBadduser\fP/\fBlogin\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcache\-max\fP
.RS 0
.IP \(bu 2
@@ -1893,6 +2284,9 @@ DEPRECATED: This option has been deprecated in favor of \fB\-\-prefer\-online\fP
.RE
.P
\fB\-\-cache\-max=0\fP is an alias for \fB\-\-prefer\-online\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBcache\-min\fP
.RS 0
.IP \(bu 2
@@ -1905,6 +2299,9 @@ DEPRECATED: This option has been deprecated in favor of \fB\-\-prefer\-offline\f
.RE
.P
\fB\-\-cache\-min=9999 (or bigger)\fP is an alias for \fB\-\-prefer\-offline\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBdev\fP
.RS 0
.IP \(bu 2
@@ -1917,6 +2314,9 @@ DEPRECATED: Please use \-\-include=dev instead\.
.RE
.P
Alias for \fB\-\-include=dev\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.author\.email\fP
.RS 0
.IP \(bu 2
@@ -1929,6 +2329,9 @@ DEPRECATED: Use \fB\-\-init\-author\-email\fP instead\.
.RE
.P
Alias for \fB\-\-init\-author\-email\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.author\.name\fP
.RS 0
.IP \(bu 2
@@ -1941,6 +2344,9 @@ DEPRECATED: Use \fB\-\-init\-author\-name\fP instead\.
.RE
.P
Alias for \fB\-\-init\-author\-name\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.author\.url\fP
.RS 0
.IP \(bu 2
@@ -1953,6 +2359,9 @@ DEPRECATED: Use \fB\-\-init\-author\-url\fP instead\.
.RE
.P
Alias for \fB\-\-init\-author\-url\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.license\fP
.RS 0
.IP \(bu 2
@@ -1965,6 +2374,9 @@ DEPRECATED: Use \fB\-\-init\-license\fP instead\.
.RE
.P
Alias for \fB\-\-init\-license\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.module\fP
.RS 0
.IP \(bu 2
@@ -1977,6 +2389,9 @@ DEPRECATED: Use \fB\-\-init\-module\fP instead\.
.RE
.P
Alias for \fB\-\-init\-module\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBinit\.version\fP
.RS 0
.IP \(bu 2
@@ -1989,6 +2404,9 @@ DEPRECATED: Use \fB\-\-init\-version\fP instead\.
.RE
.P
Alias for \fB\-\-init\-version\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBonly\fP
.RS 0
.IP \(bu 2
@@ -2001,6 +2419,9 @@ DEPRECATED: Use \fB\-\-omit=dev\fP to omit dev dependencies from the install\.
.RE
.P
When set to \fBprod\fP or \fBproduction\fP, this is an alias for \fB\-\-omit=dev\fP\|\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBoptional\fP
.RS 0
.IP \(bu 2
@@ -2016,6 +2437,9 @@ DEPRECATED: Use \fB\-\-omit=optional\fP to exclude optional dependencies, or
Default value does install optional deps unless otherwise omitted\.
.P
Alias for \-\-include=optional or \-\-omit=optional
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBproduction\fP
.RS 0
.IP \(bu 2
@@ -2028,6 +2452,9 @@ DEPRECATED: Use \fB\-\-omit=dev\fP instead\.
.RE
.P
Alias for \fB\-\-omit=dev\fP
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBshrinkwrap\fP
.RS 0
.IP \(bu 2
@@ -2040,6 +2467,9 @@ DEPRECATED: Use the \-\-package\-lock setting instead\.
.RE
.P
Alias for \-\-package\-lock
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsso\-poll\-frequency\fP
.RS 0
.IP \(bu 2
@@ -2054,6 +2484,9 @@ future version of npm in favor of web\-based login\.
.P
When used with SSO\-enabled \fBauth\-type\fPs, configures how regularly the
registry should be polled while the user is completing authentication\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBsso\-type\fP
.RS 0
.IP \(bu 2
@@ -2067,6 +2500,9 @@ future version of npm in favor of web\-based login\.
.RE
.P
If \fB\-\-auth\-type=sso\fP, the type of SSO type to use\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
+
.SS \fBtmp\fP
.RS 0
.IP \(bu 2
@@ -2083,6 +2519,8 @@ special location in the cache, and they are managed by
.P
Historically, the location where temporary files were stored\. No longer
relevant\.
+<!\-\- automatically generated, do not edit manually \-\->
+<!\-\- see lib/utils/config/definitions\.js \-\->
<!\-\- AUTOGENERATED CONFIG DESCRIPTIONS END \-\->
.SS See also
diff --git a/deps/npm/man/man7/developers.7 b/deps/npm/man/man7/developers.7
index 91132f0276..9c226dfc37 100644
--- a/deps/npm/man/man7/developers.7
+++ b/deps/npm/man/man7/developers.7
@@ -1,4 +1,4 @@
-.TH "DEVELOPERS" "7" "July 2021" "" ""
+.TH "DEVELOPERS" "7" "August 2021" "" ""
.SH "NAME"
\fBdevelopers\fR \- Developer Guide
.SS Description
diff --git a/deps/npm/man/man7/orgs.7 b/deps/npm/man/man7/orgs.7
index 68b968eea2..983a41c9c2 100644
--- a/deps/npm/man/man7/orgs.7
+++ b/deps/npm/man/man7/orgs.7
@@ -1,4 +1,4 @@
-.TH "ORGS" "7" "July 2021" "" ""
+.TH "ORGS" "7" "August 2021" "" ""
.SH "NAME"
\fBorgs\fR \- Working with Teams & Orgs
.SS Description
diff --git a/deps/npm/man/man7/registry.7 b/deps/npm/man/man7/registry.7
index 64658eab2a..07f090af82 100644
--- a/deps/npm/man/man7/registry.7
+++ b/deps/npm/man/man7/registry.7
@@ -1,4 +1,4 @@
-.TH "REGISTRY" "7" "July 2021" "" ""
+.TH "REGISTRY" "7" "August 2021" "" ""
.SH "NAME"
\fBregistry\fR \- The JavaScript Package Registry
.SS Description
@@ -9,7 +9,7 @@ package info\.
.P
npm is configured to use the \fBnpm public registry\fR at
https://registry\.npmjs\.org by default\. Use of the npm public registry is
-subject to terms of use available at https://www\.npmjs\.com/policies/terms\|\.
+subject to terms of use available at https://docs\.npmjs\.com/policies/terms\|\.
.P
You can configure npm to use any compatible registry you like, and even run
your own registry\. Use of someone else's registry may be governed by their
diff --git a/deps/npm/man/man7/removal.7 b/deps/npm/man/man7/removal.7
index a0c1c0073a..7e8a85039b 100644
--- a/deps/npm/man/man7/removal.7
+++ b/deps/npm/man/man7/removal.7
@@ -1,4 +1,4 @@
-.TH "REMOVAL" "7" "July 2021" "" ""
+.TH "REMOVAL" "7" "August 2021" "" ""
.SH "NAME"
\fBremoval\fR \- Cleaning the Slate
.SS Synopsis
diff --git a/deps/npm/man/man7/scope.7 b/deps/npm/man/man7/scope.7
index 218f4ee5a7..6cf9946d01 100644
--- a/deps/npm/man/man7/scope.7
+++ b/deps/npm/man/man7/scope.7
@@ -1,4 +1,4 @@
-.TH "SCOPE" "7" "July 2021" "" ""
+.TH "SCOPE" "7" "August 2021" "" ""
.SH "NAME"
\fBscope\fR \- Scoped packages
.SS Description
diff --git a/deps/npm/man/man7/scripts.7 b/deps/npm/man/man7/scripts.7
index cac6ab0a2a..086f7289b5 100644
--- a/deps/npm/man/man7/scripts.7
+++ b/deps/npm/man/man7/scripts.7
@@ -1,4 +1,4 @@
-.TH "SCRIPTS" "7" "July 2021" "" ""
+.TH "SCRIPTS" "7" "August 2021" "" ""
.SH "NAME"
\fBscripts\fR \- How npm handles the "scripts" field
.SS Description
diff --git a/deps/npm/man/man7/workspaces.7 b/deps/npm/man/man7/workspaces.7
index 52128895a4..0e6e4c410c 100644
--- a/deps/npm/man/man7/workspaces.7
+++ b/deps/npm/man/man7/workspaces.7
@@ -1,4 +1,4 @@
-.TH "WORKSPACES" "7" "July 2021" "" ""
+.TH "WORKSPACES" "7" "August 2021" "" ""
.SH "NAME"
\fBworkspaces\fR \- Working with workspaces
.SS Description
diff --git a/deps/npm/node_modules/@npmcli/arborist/bin/dedupe.js b/deps/npm/node_modules/@npmcli/arborist/bin/dedupe.js
new file mode 100644
index 0000000000..96f754e34c
--- /dev/null
+++ b/deps/npm/node_modules/@npmcli/arborist/bin/dedupe.js
@@ -0,0 +1,46 @@
+const Arborist = require('../')
+
+const options = require('./lib/options.js')
+const print = require('./lib/print-tree.js')
+require('./lib/logging.js')
+require('./lib/timers.js')
+
+const printDiff = diff => {
+ const {depth} = require('treeverse')
+ depth({
+ tree: diff,
+ visit: d => {
+ if (d.location === '')
+ return
+ switch (d.action) {
+ case 'REMOVE':
+ console.error('REMOVE', d.actual.location)
+ break
+ case 'ADD':
+ console.error('ADD', d.ideal.location, d.ideal.resolved)
+ break
+ case 'CHANGE':
+ console.error('CHANGE', d.actual.location, {
+ from: d.actual.resolved,
+ to: d.ideal.resolved,
+ })
+ break
+ }
+ },
+ getChildren: d => d.children,
+ })
+}
+
+const start = process.hrtime()
+process.emit('time', 'install')
+const arb = new Arborist(options)
+arb.dedupe(options).then(tree => {
+ process.emit('timeEnd', 'install')
+ const end = process.hrtime(start)
+ print(tree)
+ if (options.dryRun)
+ printDiff(arb.diff)
+ console.error(`resolved ${tree.inventory.size} deps in ${end[0] + end[1] / 1e9}s`)
+ if (tree.meta && options.save)
+ tree.meta.save()
+}).catch(er => console.error(require('util').inspect(er, { depth: Infinity })))
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
index 7ef42289d2..cda7f8acfb 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js
@@ -9,6 +9,9 @@ const { resolve, dirname } = require('path')
const { promisify } = require('util')
const treeCheck = require('../tree-check.js')
const readdir = promisify(require('readdir-scoped-modules'))
+const fs = require('fs')
+const lstat = promisify(fs.lstat)
+const readlink = promisify(fs.readlink)
const { depth } = require('treeverse')
const {
@@ -407,7 +410,14 @@ module.exports = cls => class IdealTreeBuilder extends cls {
if (this[_updateAll] || updateName) {
if (updateName)
globalExplicitUpdateNames.push(name)
- tree.package.dependencies[name] = '*'
+ const dir = resolve(nm, name)
+ const st = await lstat(dir).catch(/* istanbul ignore next */ er => null)
+ if (st && st.isSymbolicLink()) {
+ const target = await readlink(dir)
+ const real = resolve(dirname(dir), target)
+ tree.package.dependencies[name] = `file:${real}`
+ } else
+ tree.package.dependencies[name] = '*'
}
}
}
@@ -982,7 +992,6 @@ This is a one-time fix-up, please be patient...
// Note that the virtual root will also have virtual copies of the
// targets of any child Links, so that they resolve appropriately.
const parent = parent_ || this[_virtualRoot](edge.from)
- const realParent = edge.peer ? edge.from.resolveParent : edge.from
const spec = npa.resolve(edge.name, edge.spec, edge.from.path)
const first = await this[_nodeFromSpec](edge.name, spec, parent, edge)
@@ -1013,19 +1022,18 @@ This is a one-time fix-up, please be patient...
required.has(secondEdge.from) && secondEdge.type !== 'peerOptional'))
required.add(node)
- // handle otherwise unresolvable dependency nesting loops by
- // creating a symbolic link
- // a1 -> b1 -> a2 -> b2 -> a1 -> ...
- // instead of nesting forever, when the loop occurs, create
- // a symbolic link to the earlier instance
- for (let p = edge.from.resolveParent; p; p = p.resolveParent) {
- if (p.matches(node) && !p.isTop)
- return new Link({ parent: realParent, target: p })
- }
-
// keep track of the thing that caused this node to be included.
const src = parent.sourceReference
this[_peerSetSource].set(node, src)
+
+ // do not load the peers along with the set if this is a global top pkg
+ // otherwise we'll be tempted to put peers as other top-level installed
+ // things, potentially clobbering what's there already, which is not
+ // what we want. the missing edges will be picked up on the next pass.
+ if (this[_global] && edge.from.isProjectRoot)
+ return node
+
+ // otherwise, we have to make sure that our peers can go along with us.
return this[_loadPeerSet](node, required)
}
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js
index 86856d868b..0338b2cd84 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js
@@ -188,8 +188,10 @@ module.exports = cls => class ActualLoader extends cls {
const tree = this[_actualTree]
const actualRoot = tree.isLink ? tree.target : tree
const { dependencies = {} } = actualRoot.package
- for (const name of actualRoot.children.keys())
- dependencies[name] = dependencies[name] || '*'
+ for (const [name, kid] of actualRoot.children.entries()) {
+ const def = kid.isLink ? `file:${kid.realpath}` : '*'
+ dependencies[name] = dependencies[name] || def
+ }
actualRoot.package = { ...actualRoot.package, dependencies }
}
return this[_actualTree]
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js
index 1cfa6034ea..965435f84f 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js
@@ -6,11 +6,13 @@ const AuditReport = require('../audit-report.js')
const {subset, intersects} = require('semver')
const npa = require('npm-package-arg')
const debug = require('../debug.js')
+const walkUp = require('walk-up-path')
const {dirname, resolve, relative} = require('path')
const {depth: dfwalk} = require('treeverse')
const fs = require('fs')
const {promisify} = require('util')
+const lstat = promisify(fs.lstat)
const symlink = promisify(fs.symlink)
const mkdirp = require('mkdirp-infer-owner')
const justMkdirp = require('mkdirp')
@@ -19,6 +21,7 @@ const rimraf = promisify(require('rimraf'))
const PackageJson = require('@npmcli/package-json')
const packageContents = require('@npmcli/installed-package-contents')
const { checkEngine, checkPlatform } = require('npm-install-checks')
+const _force = Symbol.for('force')
const treeCheck = require('../tree-check.js')
const relpath = require('../relpath.js')
@@ -76,8 +79,10 @@ const _copyIdealToActual = Symbol('copyIdealToActual')
const _addOmitsToTrashList = Symbol('addOmitsToTrashList')
const _packageLockOnly = Symbol('packageLockOnly')
const _dryRun = Symbol('dryRun')
+const _validateNodeModules = Symbol('validateNodeModules')
+const _nmValidated = Symbol('nmValidated')
const _validatePath = Symbol('validatePath')
-const _reifyPackages = Symbol('reifyPackages')
+const _reifyPackages = Symbol.for('reifyPackages')
const _omitDev = Symbol('omitDev')
const _omitOptional = Symbol('omitOptional')
@@ -119,6 +124,7 @@ module.exports = cls => class Reifier extends cls {
this[_bundleUnpacked] = new Set()
// child nodes we'd EXPECT to be included in a bundle, but aren't
this[_bundleMissing] = new Set()
+ this[_nmValidated] = new Set()
}
// public method
@@ -159,6 +165,9 @@ module.exports = cls => class Reifier extends cls {
// recursively, because it can have other side effects to do that
// in a project directory. We just want to make it if it's missing.
await justMkdirp(resolve(this.path))
+
+ // do not allow the top-level node_modules to be a symlink
+ await this[_validateNodeModules](resolve(this.path, 'node_modules'))
}
async [_reifyPackages] () {
@@ -328,12 +337,13 @@ module.exports = cls => class Reifier extends cls {
ideal: this.idealTree,
})
- for (const node of this.diff.removed) {
- // a node in a dep bundle will only be removed if its bundling dep
- // is removed as well. in which case, we don't have to delete it!
- if (!node.inDepBundle)
- this[_addNodeToTrashList](node)
- }
+ // we don't have to add 'removed' folders to the trashlist, because
+ // they'll be moved aside to a retirement folder, and then the retired
+ // folder will be deleted at the end. This is important when we have
+ // a folder like FOO being "removed" in favor of a folder like "foo",
+ // because if we remove node_modules/FOO on case-insensitive systems,
+ // it will remove the dep that we *want* at node_modules/foo.
+
process.emit('timeEnd', 'reify:diffTrees')
}
@@ -429,19 +439,40 @@ module.exports = cls => class Reifier extends cls {
process.emit('time', 'reify:createSparse')
// if we call this fn again, we look for the previous list
// so that we can avoid making the same directory multiple times
- const dirs = this.diff.leaves
+ const leaves = this.diff.leaves
.filter(diff => {
return (diff.action === 'ADD' || diff.action === 'CHANGE') &&
!this[_sparseTreeDirs].has(diff.ideal.path) &&
!diff.ideal.isLink
})
- .map(diff => diff.ideal.path)
-
- return promiseAllRejectLate(dirs.map(d => mkdirp(d)))
- .then(made => {
- made.forEach(made => this[_sparseTreeRoots].add(made))
- dirs.forEach(dir => this[_sparseTreeDirs].add(dir))
- })
+ .map(diff => diff.ideal)
+
+ // we check this in parallel, so guard against multiple attempts to
+ // retire the same path at the same time.
+ const dirsChecked = new Set()
+ return promiseAllRejectLate(leaves.map(async node => {
+ for (const d of walkUp(node.path)) {
+ if (d === node.top.path)
+ break
+ if (dirsChecked.has(d))
+ continue
+ dirsChecked.add(d)
+ const st = await lstat(d).catch(er => null)
+ // this can happen if we have a link to a package with a name
+ // that the filesystem treats as if it is the same thing.
+ // would be nice to have conditional istanbul ignores here...
+ /* istanbul ignore next - defense in depth */
+ if (st && !st.isDirectory()) {
+ const retired = retirePath(d)
+ this[_retiredPaths][d] = retired
+ this[_trashList].add(retired)
+ await this[_renamePath](d, retired)
+ }
+ }
+ const made = await mkdirp(node.path)
+ this[_sparseTreeDirs].add(node.path)
+ this[_sparseTreeRoots].add(made)
+ }))
.then(() => process.emit('timeEnd', 'reify:createSparse'))
}
@@ -536,7 +567,20 @@ module.exports = cls => class Reifier extends cls {
})
}
- [_extractOrLink] (node) {
+ // do not allow node_modules to be a symlink
+ async [_validateNodeModules] (nm) {
+ if (this[_force] || this[_nmValidated].has(nm))
+ return
+ const st = await lstat(nm).catch(() => null)
+ if (!st || st.isDirectory()) {
+ this[_nmValidated].add(nm)
+ return
+ }
+ this.log.warn('reify', 'Removing non-directory', nm)
+ await rimraf(nm)
+ }
+
+ async [_extractOrLink] (node) {
// in normal cases, node.resolved should *always* be set by now.
// however, it is possible when a lockfile is damaged, or very old,
// or in some other race condition bugs in npm v6, that a previously
@@ -563,13 +607,29 @@ module.exports = cls => class Reifier extends cls {
return
}
- return node.isLink
- ? rimraf(node.path).then(() => this[_symlink](node))
- : pacote.extract(res, node.path, {
+ const nm = resolve(node.parent.path, 'node_modules')
+ await this[_validateNodeModules](nm)
+
+ if (node.isLink) {
+ await rimraf(node.path)
+ await this[_symlink](node)
+ } else {
+ await debug(async () => {
+ const st = await lstat(node.path).catch(e => null)
+ if (st && !st.isDirectory()) {
+ debug.log('unpacking into a non-directory', node)
+ throw Object.assign(new Error('ENOTDIR: not a directory'), {
+ code: 'ENOTDIR',
+ path: node.path,
+ })
+ }
+ })
+ await pacote.extract(res, node.path, {
...this.options,
resolved: node.resolved,
integrity: node.integrity,
})
+ }
}
async [_symlink] (node) {
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/can-place-dep.js b/deps/npm/node_modules/@npmcli/arborist/lib/can-place-dep.js
index cf6b800c44..9601ad7af3 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/can-place-dep.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/can-place-dep.js
@@ -73,8 +73,10 @@ class CanPlaceDep {
if (!edge)
throw new Error('no edge provided to CanPlaceDep')
- this._nodeSnapshot = JSON.stringify(dep)
- this._treeSnapshot = JSON.stringify(target.root)
+ this._treeSnapshot = JSON.stringify([...target.root.inventory.entries()]
+ .map(([loc, {packageName, version, resolved}]) => {
+ return [loc, packageName, version, resolved]
+ }).sort(([a], [b]) => a.localeCompare(b, 'en')))
})
// the result of whether we can place it or not
@@ -110,15 +112,10 @@ class CanPlaceDep {
this.canPlaceSelf = this.canPlace
debug(() => {
- const nodeSnapshot = JSON.stringify(dep)
- const treeSnapshot = JSON.stringify(target.root)
- /* istanbul ignore if */
- if (this._nodeSnapshot !== nodeSnapshot) {
- throw Object.assign(new Error('dep changed in CanPlaceDep'), {
- expect: this._nodeSnapshot,
- actual: nodeSnapshot,
- })
- }
+ const treeSnapshot = JSON.stringify([...target.root.inventory.entries()]
+ .map(([loc, {packageName, version, resolved}]) => {
+ return [loc, packageName, version, resolved]
+ }).sort(([a], [b]) => a.localeCompare(b, 'en')))
/* istanbul ignore if */
if (this._treeSnapshot !== treeSnapshot) {
throw Object.assign(new Error('tree changed in CanPlaceDep'), {
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/case-insensitive-map.js b/deps/npm/node_modules/@npmcli/arborist/lib/case-insensitive-map.js
new file mode 100644
index 0000000000..8254c3f7a5
--- /dev/null
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/case-insensitive-map.js
@@ -0,0 +1,48 @@
+// package children are represented with a Map object, but many file systems
+// are case-insensitive and unicode-normalizing, so we need to treat
+// node.children.get('FOO') and node.children.get('foo') as the same thing.
+
+const _keys = Symbol('keys')
+const _normKey = Symbol('normKey')
+const normalize = s => s.normalize('NFKD').toLowerCase()
+const OGMap = Map
+module.exports = class Map extends OGMap {
+ constructor (items = []) {
+ super()
+ this[_keys] = new OGMap()
+ for (const [key, val] of items)
+ this.set(key, val)
+ }
+
+ [_normKey] (key) {
+ return typeof key === 'string' ? normalize(key) : key
+ }
+
+ get (key) {
+ const normKey = this[_normKey](key)
+ return this[_keys].has(normKey) ? super.get(this[_keys].get(normKey))
+ : undefined
+ }
+
+ set (key, val) {
+ const normKey = this[_normKey](key)
+ if (this[_keys].has(normKey))
+ super.delete(this[_keys].get(normKey))
+ this[_keys].set(normKey, key)
+ return super.set(key, val)
+ }
+
+ delete (key) {
+ const normKey = this[_normKey](key)
+ if (this[_keys].has(normKey)) {
+ const prevKey = this[_keys].get(normKey)
+ this[_keys].delete(normKey)
+ return super.delete(prevKey)
+ }
+ }
+
+ has (key) {
+ const normKey = this[_normKey](key)
+ return this[_keys].has(normKey) && super.has(this[_keys].get(normKey))
+ }
+}
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/deepest-nesting-target.js b/deps/npm/node_modules/@npmcli/arborist/lib/deepest-nesting-target.js
index cbaa396f3f..9c433a7652 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/deepest-nesting-target.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/deepest-nesting-target.js
@@ -5,7 +5,7 @@
const deepestNestingTarget = (start, name) => {
for (const target of start.ancestry()) {
// note: this will skip past the first target if edge is peer
- if (target.isProjectRoot || !target.resolveParent)
+ if (target.isProjectRoot || !target.resolveParent || target.globalTop)
return target
const targetEdge = target.edgesOut.get(name)
if (!targetEdge || !targetEdge.peer)
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/edge.js b/deps/npm/node_modules/@npmcli/arborist/lib/edge.js
index 0bd9021d56..9d5ece40e5 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/edge.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/edge.js
@@ -77,7 +77,7 @@ class Edge {
}
satisfiedBy (node) {
- return depValid(node, this.spec, this.accept, this.from)
+ return node.name === this.name && depValid(node, this.spec, this.accept, this.from)
}
explain (seen = []) {
@@ -167,7 +167,7 @@ class Edge {
[_loadError] () {
return !this[_to] ? (this.optional ? null : 'MISSING')
: this.peer && this.from === this.to.parent && !this.from.isTop ? 'PEER LOCAL'
- : !depValid(this.to, this.spec, this.accept, this.from) ? 'INVALID'
+ : !this.satisfiedBy(this.to) ? 'INVALID'
: 'OK'
}
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/node.js b/deps/npm/node_modules/@npmcli/arborist/lib/node.js
index d77b18355f..5616019dd9 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/node.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/node.js
@@ -66,6 +66,7 @@ const relpath = require('./relpath.js')
const consistentResolve = require('./consistent-resolve.js')
const printableTree = require('./printable.js')
+const CaseInsensitiveMap = require('./case-insensitive-map.js')
class Node {
constructor (options) {
@@ -148,7 +149,7 @@ class Node {
this.hasShrinkwrap = hasShrinkwrap || pkg._hasShrinkwrap || false
this.legacyPeerDeps = legacyPeerDeps
- this.children = new Map()
+ this.children = new CaseInsensitiveMap()
this.fsChildren = new Set()
this.inventory = new Inventory({})
this.tops = new Set()
@@ -181,7 +182,7 @@ class Node {
}
this.edgesIn = new Set()
- this.edgesOut = new Map()
+ this.edgesOut = new CaseInsensitiveMap()
// have to set the internal package ref before assigning the parent,
// because this.package is read when adding to inventory
@@ -248,7 +249,7 @@ class Node {
// true for packages installed directly in the global node_modules folder
get globalTop () {
- return this.global && this.parent.isProjectRoot
+ return this.global && this.parent && this.parent.isProjectRoot
}
get workspaces () {
@@ -478,6 +479,9 @@ class Node {
}
get isProjectRoot () {
+ // only treat as project root if it's the actual link that is the root,
+ // or the target of the root link, but NOT if it's another link to the
+ // same root that happens to be somewhere else.
return this === this.root || this === this.root.target
}
@@ -772,9 +776,15 @@ class Node {
this[_loadDepType](this.package.dependencies, 'prod')
this[_loadDepType](this.package.optionalDependencies, 'optional')
- const { isTop, path, sourceReference } = this
- const { isTop: srcTop, path: srcPath } = sourceReference || {}
- if (isTop && path && (!sourceReference || srcTop && srcPath))
+ const { globalTop, isTop, path, sourceReference } = this
+ const {
+ globalTop: srcGlobalTop,
+ isTop: srcTop,
+ path: srcPath,
+ } = sourceReference || {}
+ const thisDev = isTop && !globalTop && path
+ const srcDev = !sourceReference || srcTop && !srcGlobalTop && srcPath
+ if (thisDev && srcDev)
this[_loadDepType](this.package.devDependencies, 'dev')
}
@@ -1014,8 +1024,20 @@ class Node {
replace (node) {
this[_delistFromMeta]()
- this.path = node.path
- this.name = node.name
+
+ // if the name matches, but is not identical, we are intending to clobber
+ // something case-insensitively, so merely setting name and path won't
+ // have the desired effect. just set the path so it'll collide in the
+ // parent's children map, and leave it at that.
+ const nameMatch = node.parent &&
+ node.parent.children.get(this.name) === node
+ if (nameMatch)
+ this.path = resolve(node.parent.path, 'node_modules', this.name)
+ else {
+ this.path = node.path
+ this.name = node.name
+ }
+
if (!this.isLink)
this.realpath = this.path
this[_refreshLocation]()
@@ -1210,7 +1232,7 @@ class Node {
}
get isTop () {
- return !this.parent
+ return !this.parent || this.globalTop
}
get top () {
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/place-dep.js b/deps/npm/node_modules/@npmcli/arborist/lib/place-dep.js
index 913b2ba6c2..c0023e74ad 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/place-dep.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/place-dep.js
@@ -16,6 +16,7 @@ const {
} = CanPlaceDep
const debug = require('./debug.js')
+const Link = require('./link.js')
const gatherDepSet = require('./gather-dep-set.js')
const peerEntrySets = require('./peer-entry-sets.js')
@@ -256,6 +257,20 @@ class PlaceDep {
return
}
+ // we were told to place it here in the target, so either it does not
+ // already exist in the tree, OR it's shadowed.
+ // handle otherwise unresolvable dependency nesting loops by
+ // creating a symbolic link
+ // a1 -> b1 -> a2 -> b2 -> a1 -> ...
+ // instead of nesting forever, when the loop occurs, create
+ // a symbolic link to the earlier instance
+ for (let p = target; p; p = p.resolveParent) {
+ if (p.matches(dep) && !p.isTop) {
+ this.placed = new Link({ parent: target, target: p })
+ return
+ }
+ }
+
// XXX if we are replacing SOME of a peer entry group, we will need to
// remove any that are not being replaced and will now be invalid, and
// re-evaluate them deeper into the tree.
@@ -268,7 +283,7 @@ class PlaceDep {
integrity: dep.integrity,
legacyPeerDeps: this.legacyPeerDeps,
error: dep.errors[0],
- ...(dep.isLink ? { target: dep.target, realpath: dep.target.path } : {}),
+ ...(dep.isLink ? { target: dep.target, realpath: dep.realpath } : {}),
})
this.oldDep = target.children.get(this.name)
diff --git a/deps/npm/node_modules/@npmcli/arborist/lib/shrinkwrap.js b/deps/npm/node_modules/@npmcli/arborist/lib/shrinkwrap.js
index ebbe004de7..83cb1f66f3 100644
--- a/deps/npm/node_modules/@npmcli/arborist/lib/shrinkwrap.js
+++ b/deps/npm/node_modules/@npmcli/arborist/lib/shrinkwrap.js
@@ -255,9 +255,11 @@ class Shrinkwrap {
if (val)
meta[key.replace(/^_/, '')] = val
})
- // we only include name if different from the node path name
+ // we only include name if different from the node path name, and for the
+ // root to help prevent churn based on the name of the directory the
+ // project is in
const pname = node.packageName
- if (pname && pname !== node.name)
+ if (pname && (node === node.root || pname !== node.name))
meta.name = pname
if (node.isTop && node.package.devDependencies)
diff --git a/deps/npm/node_modules/@npmcli/arborist/package.json b/deps/npm/node_modules/@npmcli/arborist/package.json
index 56046eaa5f..42ec2eca3b 100644
--- a/deps/npm/node_modules/@npmcli/arborist/package.json
+++ b/deps/npm/node_modules/@npmcli/arborist/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/arborist",
- "version": "2.8.0",
+ "version": "2.8.2",
"description": "Manage node_modules trees",
"dependencies": {
"@npmcli/installed-package-contents": "^1.0.7",
@@ -32,7 +32,6 @@
"rimraf": "^3.0.2",
"semver": "^7.3.5",
"ssri": "^8.0.1",
- "tar": "^6.1.0",
"treeverse": "^1.0.4",
"walk-up-path": "^1.0.0"
},
diff --git a/deps/npm/node_modules/@npmcli/map-workspaces/index.js b/deps/npm/node_modules/@npmcli/map-workspaces/index.js
index b06662154a..7587db717f 100644
--- a/deps/npm/node_modules/@npmcli/map-workspaces/index.js
+++ b/deps/npm/node_modules/@npmcli/map-workspaces/index.js
@@ -129,7 +129,12 @@ async function mapWorkspaces (opts = {}) {
if (seen.has(name) && seen.get(name) !== packagePathname) {
throw getError({
Type: Error,
- message: 'must not have multiple workspaces with the same name',
+ message: [
+ 'must not have multiple workspaces with the same name',
+ `package '${name}' has conflicts in the following paths:`,
+ ' ' + seen.get(name),
+ ' ' + packagePathname
+ ].join('\n'),
code: 'EDUPLICATEWORKSPACE'
})
}
diff --git a/deps/npm/node_modules/@npmcli/map-workspaces/package.json b/deps/npm/node_modules/@npmcli/map-workspaces/package.json
index 2445c12f9c..17cc4197e9 100644
--- a/deps/npm/node_modules/@npmcli/map-workspaces/package.json
+++ b/deps/npm/node_modules/@npmcli/map-workspaces/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/map-workspaces",
- "version": "1.0.3",
+ "version": "1.0.4",
"files": [
"index.js"
],
diff --git a/deps/npm/node_modules/@npmcli/run-script/package.json b/deps/npm/node_modules/@npmcli/run-script/package.json
index 756f87f1d4..5a5d1a71d8 100644
--- a/deps/npm/node_modules/@npmcli/run-script/package.json
+++ b/deps/npm/node_modules/@npmcli/run-script/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/run-script",
- "version": "1.8.5",
+ "version": "1.8.6",
"description": "Run a lifecycle script for a package (descendant of npm-lifecycle)",
"author": "Isaac Z. Schlueter <i@izs.me> (https://izs.me)",
"license": "ISC",
@@ -30,7 +30,6 @@
"dependencies": {
"@npmcli/node-gyp": "^1.0.2",
"@npmcli/promise-spawn": "^1.3.2",
- "infer-owner": "^1.0.4",
"node-gyp": "^7.1.0",
"read-package-json-fast": "^2.0.1"
},
diff --git a/deps/npm/node_modules/byte-size/LICENSE b/deps/npm/node_modules/byte-size/LICENSE
deleted file mode 100644
index 5699dfbe51..0000000000
--- a/deps/npm/node_modules/byte-size/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2014-21 Lloyd Brookes <75pound@gmail.com>
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/deps/npm/node_modules/byte-size/dist/index.js b/deps/npm/node_modules/byte-size/dist/index.js
deleted file mode 100644
index dd1debda59..0000000000
--- a/deps/npm/node_modules/byte-size/dist/index.js
+++ /dev/null
@@ -1,123 +0,0 @@
-(function (global, factory) {
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
- typeof define === 'function' && define.amd ? define(factory) :
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.byteSize = factory());
-}(this, (function () { 'use strict';
-
- /**
- * @module byte-size
- */
-
- let defaultOptions = {};
- const _options = new WeakMap();
-
- class ByteSize {
- constructor (bytes, options) {
- options = Object.assign({
- units: 'metric',
- precision: 1
- }, defaultOptions, options);
- _options.set(this, options);
-
- const tables = {
- metric: [
- { from: 0 , to: 1e3 , unit: 'B' , long: 'bytes' },
- { from: 1e3 , to: 1e6 , unit: 'kB', long: 'kilobytes' },
- { from: 1e6 , to: 1e9 , unit: 'MB', long: 'megabytes' },
- { from: 1e9 , to: 1e12, unit: 'GB', long: 'gigabytes' },
- { from: 1e12, to: 1e15, unit: 'TB', long: 'terabytes' },
- { from: 1e15, to: 1e18, unit: 'PB', long: 'petabytes' },
- { from: 1e18, to: 1e21, unit: 'EB', long: 'exabytes' },
- { from: 1e21, to: 1e24, unit: 'ZB', long: 'zettabytes' },
- { from: 1e24, to: 1e27, unit: 'YB', long: 'yottabytes' },
- ],
- metric_octet: [
- { from: 0 , to: 1e3 , unit: 'o' , long: 'octets' },
- { from: 1e3 , to: 1e6 , unit: 'ko', long: 'kilooctets' },
- { from: 1e6 , to: 1e9 , unit: 'Mo', long: 'megaoctets' },
- { from: 1e9 , to: 1e12, unit: 'Go', long: 'gigaoctets' },
- { from: 1e12, to: 1e15, unit: 'To', long: 'teraoctets' },
- { from: 1e15, to: 1e18, unit: 'Po', long: 'petaoctets' },
- { from: 1e18, to: 1e21, unit: 'Eo', long: 'exaoctets' },
- { from: 1e21, to: 1e24, unit: 'Zo', long: 'zettaoctets' },
- { from: 1e24, to: 1e27, unit: 'Yo', long: 'yottaoctets' },
- ],
- iec: [
- { from: 0 , to: Math.pow(1024, 1), unit: 'B' , long: 'bytes' },
- { from: Math.pow(1024, 1), to: Math.pow(1024, 2), unit: 'KiB', long: 'kibibytes' },
- { from: Math.pow(1024, 2), to: Math.pow(1024, 3), unit: 'MiB', long: 'mebibytes' },
- { from: Math.pow(1024, 3), to: Math.pow(1024, 4), unit: 'GiB', long: 'gibibytes' },
- { from: Math.pow(1024, 4), to: Math.pow(1024, 5), unit: 'TiB', long: 'tebibytes' },
- { from: Math.pow(1024, 5), to: Math.pow(1024, 6), unit: 'PiB', long: 'pebibytes' },
- { from: Math.pow(1024, 6), to: Math.pow(1024, 7), unit: 'EiB', long: 'exbibytes' },
- { from: Math.pow(1024, 7), to: Math.pow(1024, 8), unit: 'ZiB', long: 'zebibytes' },
- { from: Math.pow(1024, 8), to: Math.pow(1024, 9), unit: 'YiB', long: 'yobibytes' },
- ],
- iec_octet: [
- { from: 0 , to: Math.pow(1024, 1), unit: 'o' , long: 'octets' },
- { from: Math.pow(1024, 1), to: Math.pow(1024, 2), unit: 'Kio', long: 'kibioctets' },
- { from: Math.pow(1024, 2), to: Math.pow(1024, 3), unit: 'Mio', long: 'mebioctets' },
- { from: Math.pow(1024, 3), to: Math.pow(1024, 4), unit: 'Gio', long: 'gibioctets' },
- { from: Math.pow(1024, 4), to: Math.pow(1024, 5), unit: 'Tio', long: 'tebioctets' },
- { from: Math.pow(1024, 5), to: Math.pow(1024, 6), unit: 'Pio', long: 'pebioctets' },
- { from: Math.pow(1024, 6), to: Math.pow(1024, 7), unit: 'Eio', long: 'exbioctets' },
- { from: Math.pow(1024, 7), to: Math.pow(1024, 8), unit: 'Zio', long: 'zebioctets' },
- { from: Math.pow(1024, 8), to: Math.pow(1024, 9), unit: 'Yio', long: 'yobioctets' },
- ],
- };
- Object.assign(tables, options.customUnits);
-
- const prefix = bytes < 0 ? '-' : '';
- bytes = Math.abs(bytes);
- const table = tables[options.units];
- if (table) {
- const units = table.find(u => bytes >= u.from && bytes < u.to);
- if (units) {
- const value = units.from === 0
- ? prefix + bytes
- : prefix + (bytes / units.from).toFixed(options.precision);
- this.value = value;
- this.unit = units.unit;
- this.long = units.long;
- } else {
- this.value = prefix + bytes;
- this.unit = '';
- this.long = '';
- }
- } else {
- throw new Error(`Invalid units specified: ${options.units}`)
- }
- }
-
- toString () {
- const options = _options.get(this);
- return options.toStringFn ? options.toStringFn.bind(this)() : `${this.value} ${this.unit}`
- }
- }
-
- /**
- * Returns an object with the spec `{ value: string, unit: string, long: string }`. The returned object defines a `toString` method meaning it can be used in any string context.
- * @param {number} - The bytes value to convert.
- * @param [options] {object} - Optional config.
- * @param [options.precision] {number} - Number of decimal places. Defaults to `1`.
- * @param [options.units] {string} - Specify `'metric'`, `'iec'`, `'metric_octet'`, `'iec_octet'` or the name of a property from the custom units table in `options.customUnits`. Defaults to `metric`.
- * @param [options.customUnits] {object} - An object containing one or more custom unit lookup tables.
- * @param [options.toStringFn] {function} - A `toString` function to override the default.
- * @returns {object}
- * @alias module:byte-size
- */
- function byteSize (bytes, options) {
- return new ByteSize(bytes, options)
- }
-
- /**
- * Set the default `byteSize` options for the duration of the process.
- * @param options {object} - A `byteSize` options object.
- */
- byteSize.defaultOptions = function (options) {
- defaultOptions = options;
- };
-
- return byteSize;
-
-})));
diff --git a/deps/npm/node_modules/byte-size/index.mjs b/deps/npm/node_modules/byte-size/index.mjs
deleted file mode 100644
index bd6548c686..0000000000
--- a/deps/npm/node_modules/byte-size/index.mjs
+++ /dev/null
@@ -1,115 +0,0 @@
-/**
- * @module byte-size
- */
-
-let defaultOptions = {}
-const _options = new WeakMap()
-
-class ByteSize {
- constructor (bytes, options) {
- options = Object.assign({
- units: 'metric',
- precision: 1
- }, defaultOptions, options)
- _options.set(this, options)
-
- const tables = {
- metric: [
- { from: 0 , to: 1e3 , unit: 'B' , long: 'bytes' },
- { from: 1e3 , to: 1e6 , unit: 'kB', long: 'kilobytes' },
- { from: 1e6 , to: 1e9 , unit: 'MB', long: 'megabytes' },
- { from: 1e9 , to: 1e12, unit: 'GB', long: 'gigabytes' },
- { from: 1e12, to: 1e15, unit: 'TB', long: 'terabytes' },
- { from: 1e15, to: 1e18, unit: 'PB', long: 'petabytes' },
- { from: 1e18, to: 1e21, unit: 'EB', long: 'exabytes' },
- { from: 1e21, to: 1e24, unit: 'ZB', long: 'zettabytes' },
- { from: 1e24, to: 1e27, unit: 'YB', long: 'yottabytes' },
- ],
- metric_octet: [
- { from: 0 , to: 1e3 , unit: 'o' , long: 'octets' },
- { from: 1e3 , to: 1e6 , unit: 'ko', long: 'kilooctets' },
- { from: 1e6 , to: 1e9 , unit: 'Mo', long: 'megaoctets' },
- { from: 1e9 , to: 1e12, unit: 'Go', long: 'gigaoctets' },
- { from: 1e12, to: 1e15, unit: 'To', long: 'teraoctets' },
- { from: 1e15, to: 1e18, unit: 'Po', long: 'petaoctets' },
- { from: 1e18, to: 1e21, unit: 'Eo', long: 'exaoctets' },
- { from: 1e21, to: 1e24, unit: 'Zo', long: 'zettaoctets' },
- { from: 1e24, to: 1e27, unit: 'Yo', long: 'yottaoctets' },
- ],
- iec: [
- { from: 0 , to: Math.pow(1024, 1), unit: 'B' , long: 'bytes' },
- { from: Math.pow(1024, 1), to: Math.pow(1024, 2), unit: 'KiB', long: 'kibibytes' },
- { from: Math.pow(1024, 2), to: Math.pow(1024, 3), unit: 'MiB', long: 'mebibytes' },
- { from: Math.pow(1024, 3), to: Math.pow(1024, 4), unit: 'GiB', long: 'gibibytes' },
- { from: Math.pow(1024, 4), to: Math.pow(1024, 5), unit: 'TiB', long: 'tebibytes' },
- { from: Math.pow(1024, 5), to: Math.pow(1024, 6), unit: 'PiB', long: 'pebibytes' },
- { from: Math.pow(1024, 6), to: Math.pow(1024, 7), unit: 'EiB', long: 'exbibytes' },
- { from: Math.pow(1024, 7), to: Math.pow(1024, 8), unit: 'ZiB', long: 'zebibytes' },
- { from: Math.pow(1024, 8), to: Math.pow(1024, 9), unit: 'YiB', long: 'yobibytes' },
- ],
- iec_octet: [
- { from: 0 , to: Math.pow(1024, 1), unit: 'o' , long: 'octets' },
- { from: Math.pow(1024, 1), to: Math.pow(1024, 2), unit: 'Kio', long: 'kibioctets' },
- { from: Math.pow(1024, 2), to: Math.pow(1024, 3), unit: 'Mio', long: 'mebioctets' },
- { from: Math.pow(1024, 3), to: Math.pow(1024, 4), unit: 'Gio', long: 'gibioctets' },
- { from: Math.pow(1024, 4), to: Math.pow(1024, 5), unit: 'Tio', long: 'tebioctets' },
- { from: Math.pow(1024, 5), to: Math.pow(1024, 6), unit: 'Pio', long: 'pebioctets' },
- { from: Math.pow(1024, 6), to: Math.pow(1024, 7), unit: 'Eio', long: 'exbioctets' },
- { from: Math.pow(1024, 7), to: Math.pow(1024, 8), unit: 'Zio', long: 'zebioctets' },
- { from: Math.pow(1024, 8), to: Math.pow(1024, 9), unit: 'Yio', long: 'yobioctets' },
- ],
- }
- Object.assign(tables, options.customUnits)
-
- const prefix = bytes < 0 ? '-' : ''
- bytes = Math.abs(bytes)
- const table = tables[options.units]
- if (table) {
- const units = table.find(u => bytes >= u.from && bytes < u.to)
- if (units) {
- const value = units.from === 0
- ? prefix + bytes
- : prefix + (bytes / units.from).toFixed(options.precision)
- this.value = value
- this.unit = units.unit
- this.long = units.long
- } else {
- this.value = prefix + bytes
- this.unit = ''
- this.long = ''
- }
- } else {
- throw new Error(`Invalid units specified: ${options.units}`)
- }
- }
-
- toString () {
- const options = _options.get(this)
- return options.toStringFn ? options.toStringFn.bind(this)() : `${this.value} ${this.unit}`
- }
-}
-
-/**
- * Returns an object with the spec `{ value: string, unit: string, long: string }`. The returned object defines a `toString` method meaning it can be used in any string context.
- * @param {number} - The bytes value to convert.
- * @param [options] {object} - Optional config.
- * @param [options.precision] {number} - Number of decimal places. Defaults to `1`.
- * @param [options.units] {string} - Specify `'metric'`, `'iec'`, `'metric_octet'`, `'iec_octet'` or the name of a property from the custom units table in `options.customUnits`. Defaults to `metric`.
- * @param [options.customUnits] {object} - An object containing one or more custom unit lookup tables.
- * @param [options.toStringFn] {function} - A `toString` function to override the default.
- * @returns {object}
- * @alias module:byte-size
- */
-function byteSize (bytes, options) {
- return new ByteSize(bytes, options)
-}
-
-/**
- * Set the default `byteSize` options for the duration of the process.
- * @param options {object} - A `byteSize` options object.
- */
-byteSize.defaultOptions = function (options) {
- defaultOptions = options
-}
-
-export default byteSize
diff --git a/deps/npm/node_modules/byte-size/package.json b/deps/npm/node_modules/byte-size/package.json
deleted file mode 100644
index b5f454592d..0000000000
--- a/deps/npm/node_modules/byte-size/package.json
+++ /dev/null
@@ -1,55 +0,0 @@
-{
- "name": "byte-size",
- "author": "Lloyd Brookes <75pound@gmail.com>",
- "contributors": [
- {
- "name": "Raul Perez",
- "email": "repejota@gmail.com",
- "url": "http://repejota.com"
- }
- ],
- "version": "7.0.1",
- "main": "dist/index.js",
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "description": "Convert a bytes or octets value (e.g. 34565346) to a human-readable string ('34.6 MB'). Choose between metric or IEC units.",
- "repository": "https://github.com/75lb/byte-size",
- "files": [
- "index.mjs",
- "dist/index.js"
- ],
- "keywords": [
- "convert",
- "bytes",
- "octet",
- "size",
- "human",
- "readable",
- "metric",
- "IEC"
- ],
- "scripts": {
- "test": "npm run dist && npm run test:esm && npm run test:web",
- "test:esm": "esm-runner test.mjs",
- "test:web": "web-runner test.mjs",
- "docs": "jsdoc2md -t README.hbs dist/index.js > README.md",
- "cover": "c8 npm test && c8 report --reporter=text-lcov | coveralls",
- "dist": "rollup -f umd -n byteSize -o dist/index.js index.mjs"
- },
- "devDependencies": {
- "@test-runner/web": "^0.3.5",
- "coveralls": "^3.1.0",
- "esm-runner": "^0.3.4",
- "isomorphic-assert": "^0.1.1",
- "jsdoc-to-markdown": "^7.0.0",
- "rollup": "^2.40.0",
- "test-object-model": "^0.6.1"
- },
- "standard": {
- "ignore": [
- "dist"
- ]
- }
-}
diff --git a/deps/npm/node_modules/chalk/package.json b/deps/npm/node_modules/chalk/package.json
index c2d63f67e5..47c23f2906 100644
--- a/deps/npm/node_modules/chalk/package.json
+++ b/deps/npm/node_modules/chalk/package.json
@@ -1,6 +1,6 @@
{
"name": "chalk",
- "version": "4.1.1",
+ "version": "4.1.2",
"description": "Terminal string styling done right",
"license": "MIT",
"repository": "chalk/chalk",
diff --git a/deps/npm/node_modules/chalk/readme.md b/deps/npm/node_modules/chalk/readme.md
index 851259216b..a055d21c97 100644
--- a/deps/npm/node_modules/chalk/readme.md
+++ b/deps/npm/node_modules/chalk/readme.md
@@ -33,7 +33,7 @@
<br>
<br>
<a href="https://retool.com/?utm_campaign=sindresorhus">
- <img src="https://sindresorhus.com/assets/thanks/retool-logo.svg" width="210"/>
+ <img src="https://sindresorhus.com/assets/thanks/retool-logo.svg" width="230"/>
</a>
<br>
<br>
@@ -48,6 +48,12 @@
<span>and avoiding access controls. Keep your team and servers in sync with Doppler.</span>
</div>
</a>
+ <br>
+ <a href="https://uibakery.io/?utm_source=chalk&utm_medium=sponsor&utm_campaign=github">
+ <div>
+ <img src="https://sindresorhus.com/assets/thanks/uibakery-logo.jpg" width="270" alt="UI Bakery">
+ </div>
+ </a>
</p>
</div>
diff --git a/deps/npm/node_modules/color-support/LICENSE b/deps/npm/node_modules/color-support/LICENSE
new file mode 100644
index 0000000000..19129e315f
--- /dev/null
+++ b/deps/npm/node_modules/color-support/LICENSE
@@ -0,0 +1,15 @@
+The ISC License
+
+Copyright (c) Isaac Z. Schlueter and Contributors
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/color-support/README.md b/deps/npm/node_modules/color-support/README.md
new file mode 100644
index 0000000000..f89aa17d35
--- /dev/null
+++ b/deps/npm/node_modules/color-support/README.md
@@ -0,0 +1,129 @@
+# color-support
+
+A module which will endeavor to guess your terminal's level of color
+support.
+
+[![Build Status](https://travis-ci.org/isaacs/color-support.svg?branch=master)](https://travis-ci.org/isaacs/color-support) [![Coverage Status](https://coveralls.io/repos/github/isaacs/color-support/badge.svg?branch=master)](https://coveralls.io/github/isaacs/color-support?branch=master)
+
+This is similar to `supports-color`, but it does not read
+`process.argv`.
+
+1. If not in a node environment, not supported.
+
+2. If stdout is not a TTY, not supported, unless the `ignoreTTY`
+ option is set.
+
+3. If the `TERM` environ is `dumb`, not supported, unless the
+ `ignoreDumb` option is set.
+
+4. If on Windows, then support 16 colors.
+
+5. If using Tmux, then support 256 colors.
+
+7. Handle continuous-integration servers. If `CI` or
+ `TEAMCITY_VERSION` are set in the environment, and `TRAVIS` is not
+ set, then color is not supported, unless `ignoreCI` option is set.
+
+6. Guess based on the `TERM_PROGRAM` environ. These terminals support
+ 16m colors:
+
+ - `iTerm.app` version 3.x supports 16m colors, below support 256
+ - `MacTerm` supports 16m colors
+ - `Apple_Terminal` supports 256 colors
+ - Have more things that belong on this list? Send a PR!
+
+8. Make a guess based on the `TERM` environment variable. Any
+ `xterm-256color` will get 256 colors. Any screen, xterm, vt100,
+ color, ansi, cygwin, or linux `TERM` will get 16 colors.
+
+9. If `COLORTERM` environment variable is set, then support 16 colors.
+
+10. At this point, we assume that color is not supported.
+
+## USAGE
+
+```javascript
+var testColorSupport = require('color-support')
+var colorSupport = testColorSupport(/* options object */)
+
+if (!colorSupport) {
+ console.log('color is not supported')
+} else if (colorSupport.has16m) {
+ console.log('\x1b[38;2;102;194;255m16m colors\x1b[0m')
+} else if (colorSupport.has256) {
+ console.log('\x1b[38;5;119m256 colors\x1b[0m')
+} else if (colorSupport.hasBasic) {
+ console.log('\x1b[31mbasic colors\x1b[0m')
+} else {
+ console.log('this is impossible, but colors are not supported')
+}
+```
+
+If you don't have any options to set, you can also just look at the
+flags which will all be set on the test function itself. (Of course,
+this doesn't return a falsey value when colors aren't supported, and
+doesn't allow you to set options.)
+
+```javascript
+var colorSupport = require('color-support')
+
+if (colorSupport.has16m) {
+ console.log('\x1b[38;2;102;194;255m16m colors\x1b[0m')
+} else if (colorSupport.has256) {
+ console.log('\x1b[38;5;119m256 colors\x1b[0m')
+} else if (colorSupport.hasBasic) {
+ console.log('\x1b[31mbasic colors\x1b[0m')
+} else {
+ console.log('colors are not supported')
+}
+```
+
+## Options
+
+You can pass in the following options.
+
+* ignoreTTY - default false. Ignore the `isTTY` check.
+* ignoreDumb - default false. Ignore `TERM=dumb` environ check.
+* ignoreCI - default false. Ignore `CI` environ check.
+* env - Object for environment vars. Defaults to `process.env`.
+* stream - Stream for `isTTY` check. Defaults to `process.stdout`.
+* term - String for `TERM` checking. Defaults to `env.TERM`.
+* alwaysReturn - default false. Return an object when colors aren't
+ supported (instead of returning `false`).
+* level - A number from 0 to 3. This will return a result for the
+ specified level. This is useful if you want to be able to set the
+ color support level explicitly as a number in an environment
+ variable or config, but then use the object flags in your program.
+ Except for `alwaysReturn` to return an object for level 0, all other
+ options are ignored, since no checking is done if a level is
+ explicitly set.
+
+## Return Value
+
+If no color support is available, then `false` is returned by default,
+unless the `alwaysReturn` flag is set to `true`. This is so that the
+simple question of "can I use colors or not" can treat any truthy
+return as "yes".
+
+Otherwise, the return object has the following fields:
+
+* `level` - A number from 0 to 3
+ * `0` - No color support
+ * `1` - Basic (16) color support
+ * `2` - 256 color support
+ * `3` - 16 million (true) color support
+* `hasBasic` - Boolean
+* `has256` - Boolean
+* `has16m` - Boolean
+
+## CLI
+
+You can run the `color-support` bin from the command line which will
+just dump the values as this module calculates them in whatever env
+it's run. It takes no command line arguments.
+
+## Credits
+
+This is a spiritual, if not actual, fork of
+[supports-color](http://npm.im/supports-color) by the ever prolific
+[Sindre Sorhus](http://npm.im/~sindresorhus).
diff --git a/deps/npm/node_modules/color-support/bin.js b/deps/npm/node_modules/color-support/bin.js
new file mode 100755
index 0000000000..3c0a967218
--- /dev/null
+++ b/deps/npm/node_modules/color-support/bin.js
@@ -0,0 +1,3 @@
+#!/usr/bin/env node
+var colorSupport = require('./')({alwaysReturn: true })
+console.log(JSON.stringify(colorSupport, null, 2))
diff --git a/deps/npm/node_modules/color-support/browser.js b/deps/npm/node_modules/color-support/browser.js
new file mode 100644
index 0000000000..ab5c6631a3
--- /dev/null
+++ b/deps/npm/node_modules/color-support/browser.js
@@ -0,0 +1,14 @@
+module.exports = colorSupport({ alwaysReturn: true }, colorSupport)
+
+function colorSupport(options, obj) {
+ obj = obj || {}
+ options = options || {}
+ obj.level = 0
+ obj.hasBasic = false
+ obj.has256 = false
+ obj.has16m = false
+ if (!options.alwaysReturn) {
+ return false
+ }
+ return obj
+}
diff --git a/deps/npm/node_modules/color-support/index.js b/deps/npm/node_modules/color-support/index.js
new file mode 100644
index 0000000000..6b6f3b2819
--- /dev/null
+++ b/deps/npm/node_modules/color-support/index.js
@@ -0,0 +1,134 @@
+// call it on itself so we can test the export val for basic stuff
+module.exports = colorSupport({ alwaysReturn: true }, colorSupport)
+
+function hasNone (obj, options) {
+ obj.level = 0
+ obj.hasBasic = false
+ obj.has256 = false
+ obj.has16m = false
+ if (!options.alwaysReturn) {
+ return false
+ }
+ return obj
+}
+
+function hasBasic (obj) {
+ obj.hasBasic = true
+ obj.has256 = false
+ obj.has16m = false
+ obj.level = 1
+ return obj
+}
+
+function has256 (obj) {
+ obj.hasBasic = true
+ obj.has256 = true
+ obj.has16m = false
+ obj.level = 2
+ return obj
+}
+
+function has16m (obj) {
+ obj.hasBasic = true
+ obj.has256 = true
+ obj.has16m = true
+ obj.level = 3
+ return obj
+}
+
+function colorSupport (options, obj) {
+ options = options || {}
+
+ obj = obj || {}
+
+ // if just requesting a specific level, then return that.
+ if (typeof options.level === 'number') {
+ switch (options.level) {
+ case 0:
+ return hasNone(obj, options)
+ case 1:
+ return hasBasic(obj)
+ case 2:
+ return has256(obj)
+ case 3:
+ return has16m(obj)
+ }
+ }
+
+ obj.level = 0
+ obj.hasBasic = false
+ obj.has256 = false
+ obj.has16m = false
+
+ if (typeof process === 'undefined' ||
+ !process ||
+ !process.stdout ||
+ !process.env ||
+ !process.platform) {
+ return hasNone(obj, options)
+ }
+
+ var env = options.env || process.env
+ var stream = options.stream || process.stdout
+ var term = options.term || env.TERM || ''
+ var platform = options.platform || process.platform
+
+ if (!options.ignoreTTY && !stream.isTTY) {
+ return hasNone(obj, options)
+ }
+
+ if (!options.ignoreDumb && term === 'dumb' && !env.COLORTERM) {
+ return hasNone(obj, options)
+ }
+
+ if (platform === 'win32') {
+ return hasBasic(obj)
+ }
+
+ if (env.TMUX) {
+ return has256(obj)
+ }
+
+ if (!options.ignoreCI && (env.CI || env.TEAMCITY_VERSION)) {
+ if (env.TRAVIS) {
+ return has256(obj)
+ } else {
+ return hasNone(obj, options)
+ }
+ }
+
+ // TODO: add more term programs
+ switch (env.TERM_PROGRAM) {
+ case 'iTerm.app':
+ var ver = env.TERM_PROGRAM_VERSION || '0.'
+ if (/^[0-2]\./.test(ver)) {
+ return has256(obj)
+ } else {
+ return has16m(obj)
+ }
+
+ case 'HyperTerm':
+ case 'Hyper':
+ return has16m(obj)
+
+ case 'MacTerm':
+ return has16m(obj)
+
+ case 'Apple_Terminal':
+ return has256(obj)
+ }
+
+ if (/^xterm-256/.test(term)) {
+ return has256(obj)
+ }
+
+ if (/^screen|^xterm|^vt100|color|ansi|cygwin|linux/i.test(term)) {
+ return hasBasic(obj)
+ }
+
+ if (env.COLORTERM) {
+ return hasBasic(obj)
+ }
+
+ return hasNone(obj, options)
+}
diff --git a/deps/npm/node_modules/color-support/package.json b/deps/npm/node_modules/color-support/package.json
new file mode 100644
index 0000000000..f3e3b77145
--- /dev/null
+++ b/deps/npm/node_modules/color-support/package.json
@@ -0,0 +1,36 @@
+{
+ "name": "color-support",
+ "version": "1.1.3",
+ "description": "A module which will endeavor to guess your terminal's level of color support.",
+ "main": "index.js",
+ "browser": "browser.js",
+ "bin": "bin.js",
+ "devDependencies": {
+ "tap": "^10.3.3"
+ },
+ "scripts": {
+ "test": "tap test/*.js --100 -J",
+ "preversion": "npm test",
+ "postversion": "npm publish",
+ "postpublish": "git push origin --all; git push origin --tags"
+ },
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/isaacs/color-support.git"
+ },
+ "keywords": [
+ "terminal",
+ "color",
+ "support",
+ "xterm",
+ "truecolor",
+ "256"
+ ],
+ "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
+ "license": "ISC",
+ "files": [
+ "browser.js",
+ "index.js",
+ "bin.js"
+ ]
+}
diff --git a/deps/npm/node_modules/debug/package.json b/deps/npm/node_modules/debug/package.json
index da809d2b8d..b7d70acb9b 100644
--- a/deps/npm/node_modules/debug/package.json
+++ b/deps/npm/node_modules/debug/package.json
@@ -1,6 +1,6 @@
{
"name": "debug",
- "version": "4.3.1",
+ "version": "4.3.2",
"repository": {
"type": "git",
"url": "git://github.com/visionmedia/debug.git"
diff --git a/deps/npm/node_modules/debug/src/common.js b/deps/npm/node_modules/debug/src/common.js
index 392a8e005a..50ce292510 100644
--- a/deps/npm/node_modules/debug/src/common.js
+++ b/deps/npm/node_modules/debug/src/common.js
@@ -60,6 +60,8 @@ function setup(env) {
function createDebug(namespace) {
let prevTime;
let enableOverride = null;
+ let namespacesCache;
+ let enabledCache;
function debug(...args) {
// Disabled?
@@ -120,7 +122,17 @@ function setup(env) {
Object.defineProperty(debug, 'enabled', {
enumerable: true,
configurable: false,
- get: () => enableOverride === null ? createDebug.enabled(namespace) : enableOverride,
+ get: () => {
+ if (enableOverride !== null) {
+ return enableOverride;
+ }
+ if (namespacesCache !== createDebug.namespaces) {
+ namespacesCache = createDebug.namespaces;
+ enabledCache = createDebug.enabled(namespace);
+ }
+
+ return enabledCache;
+ },
set: v => {
enableOverride = v;
}
@@ -149,6 +161,7 @@ function setup(env) {
*/
function enable(namespaces) {
createDebug.save(namespaces);
+ createDebug.namespaces = namespaces;
createDebug.names = [];
createDebug.skips = [];
diff --git a/deps/npm/node_modules/resolve/LICENSE b/deps/npm/node_modules/fastest-levenshtein/LICENSE.md
index ff4fce28af..0e62da309f 100644
--- a/deps/npm/node_modules/resolve/LICENSE
+++ b/deps/npm/node_modules/fastest-levenshtein/LICENSE.md
@@ -1,6 +1,6 @@
MIT License
-Copyright (c) 2012 James Halliday
+Copyright (c) 2020 Kasper Unn Weihe
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
+SOFTWARE. \ No newline at end of file
diff --git a/deps/npm/node_modules/fastest-levenshtein/index.d.ts b/deps/npm/node_modules/fastest-levenshtein/index.d.ts
new file mode 100644
index 0000000000..bdc2bb1cc3
--- /dev/null
+++ b/deps/npm/node_modules/fastest-levenshtein/index.d.ts
@@ -0,0 +1,2 @@
+export function distance(a: string, b: string): number;
+export function closest(str: string, arr: string[]): string; \ No newline at end of file
diff --git a/deps/npm/node_modules/fastest-levenshtein/index.js b/deps/npm/node_modules/fastest-levenshtein/index.js
new file mode 100644
index 0000000000..437bdebfda
--- /dev/null
+++ b/deps/npm/node_modules/fastest-levenshtein/index.js
@@ -0,0 +1,147 @@
+"use strict";
+const peq = new Uint32Array(0x10000);
+const myers_32 = (a, b) => {
+ const n = a.length;
+ const m = b.length;
+ const lst = 1 << (n - 1);
+ let pv = -1;
+ let mv = 0;
+ let sc = n;
+ let i = n;
+ while (i--) {
+ peq[a.charCodeAt(i)] |= 1 << i;
+ }
+ for (i = 0; i < m; i++) {
+ let eq = peq[b.charCodeAt(i)];
+ const xv = eq | mv;
+ eq |= ((eq & pv) + pv) ^ pv;
+ mv |= ~(eq | pv);
+ pv &= eq;
+ if (mv & lst) {
+ sc++;
+ }
+ if (pv & lst) {
+ sc--;
+ }
+ mv = (mv << 1) | 1;
+ pv = (pv << 1) | ~(xv | mv);
+ mv &= xv;
+ }
+ i = n;
+ while (i--) {
+ peq[a.charCodeAt(i)] = 0;
+ }
+ return sc;
+};
+
+const myers_x = (a, b) => {
+ const n = a.length;
+ const m = b.length;
+ const mhc = [];
+ const phc = [];
+ const hsize = Math.ceil(n / 32);
+ const vsize = Math.ceil(m / 32);
+ let score = m;
+ for (let i = 0; i < hsize; i++) {
+ phc[i] = -1;
+ mhc[i] = 0;
+ }
+ let j = 0;
+ for (; j < vsize - 1; j++) {
+ let mv = 0;
+ let pv = -1;
+ const start = j * 32;
+ const end = Math.min(32, m) + start;
+ for (let k = start; k < end; k++) {
+ peq[b.charCodeAt(k)] |= 1 << k;
+ }
+ score = m;
+ for (let i = 0; i < n; i++) {
+ const eq = peq[a.charCodeAt(i)];
+ const pb = (phc[(i / 32) | 0] >>> i) & 1;
+ const mb = (mhc[(i / 32) | 0] >>> i) & 1;
+ const xv = eq | mv;
+ const xh = ((((eq | mb) & pv) + pv) ^ pv) | eq | mb;
+ let ph = mv | ~(xh | pv);
+ let mh = pv & xh;
+ if ((ph >>> 31) ^ pb) {
+ phc[(i / 32) | 0] ^= 1 << i;
+ }
+ if ((mh >>> 31) ^ mb) {
+ mhc[(i / 32) | 0] ^= 1 << i;
+ }
+ ph = (ph << 1) | pb;
+ mh = (mh << 1) | mb;
+ pv = mh | ~(xv | ph);
+ mv = ph & xv;
+ }
+ for (let k = start; k < end; k++) {
+ peq[b.charCodeAt(k)] = 0;
+ }
+ }
+ let mv = 0;
+ let pv = -1;
+ const start = j * 32;
+ const end = Math.min(32, m - start) + start;
+ for (let k = start; k < end; k++) {
+ peq[b.charCodeAt(k)] |= 1 << k;
+ }
+ score = m;
+ for (let i = 0; i < n; i++) {
+ const eq = peq[a.charCodeAt(i)];
+ const pb = (phc[(i / 32) | 0] >>> i) & 1;
+ const mb = (mhc[(i / 32) | 0] >>> i) & 1;
+ const xv = eq | mv;
+ const xh = ((((eq | mb) & pv) + pv) ^ pv) | eq | mb;
+ let ph = mv | ~(xh | pv);
+ let mh = pv & xh;
+ score += (ph >>> (m - 1)) & 1;
+ score -= (mh >>> (m - 1)) & 1;
+ if ((ph >>> 31) ^ pb) {
+ phc[(i / 32) | 0] ^= 1 << i;
+ }
+ if ((mh >>> 31) ^ mb) {
+ mhc[(i / 32) | 0] ^= 1 << i;
+ }
+ ph = (ph << 1) | pb;
+ mh = (mh << 1) | mb;
+ pv = mh | ~(xv | ph);
+ mv = ph & xv;
+ }
+ for (let k = start; k < end; k++) {
+ peq[b.charCodeAt(k)] = 0;
+ }
+ return score;
+};
+
+const distance = (a, b) => {
+ if (a.length > b.length) {
+ const tmp = b;
+ b = a;
+ a = tmp;
+ }
+ if (a.length === 0) {
+ return b.length;
+ }
+ if (a.length <= 32) {
+ return myers_32(a, b);
+ }
+ return myers_x(a, b);
+};
+
+const closest = (str, arr) => {
+ let min_distance = Infinity;
+ let min_index = 0;
+ for (let i = 0; i < arr.length; i++) {
+ const dist = distance(str, arr[i]);
+ if (dist < min_distance) {
+ min_distance = dist;
+ min_index = i;
+ }
+ }
+ return arr[min_index];
+};
+
+module.exports = {
+ closest, distance
+}
diff --git a/deps/npm/node_modules/fastest-levenshtein/package.json b/deps/npm/node_modules/fastest-levenshtein/package.json
new file mode 100644
index 0000000000..4d3ca34c92
--- /dev/null
+++ b/deps/npm/node_modules/fastest-levenshtein/package.json
@@ -0,0 +1,63 @@
+{
+ "name": "fastest-levenshtein",
+ "version": "1.0.12",
+ "description": "Fastest Levenshtein distance implementation in JS.",
+ "main": "index.js",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/ka-weihe/fastest-levenshtein.git"
+ },
+ "keywords": [
+ "levenshtein",
+ "distance",
+ "fast",
+ "fastest",
+ "edit",
+ "string",
+ "similarity",
+ "algorithm",
+ "match",
+ "comparison",
+ "fuzzy",
+ "search",
+ "string",
+ "matching",
+ "similar",
+ "node",
+ "difference"
+ ],
+ "author": "Kasper U. Weihe",
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/ka-weihe/fastest-levenshtein/issues"
+ },
+ "homepage": "https://github.com/ka-weihe/fastest-levenshtein#README",
+ "scripts": {
+ "test": "jest",
+ "test:coverage": "jest --coverage",
+ "test:coveralls": "jest --coverage --coverageReporters=text-lcov | coveralls"
+ },
+ "devDependencies": {
+ "benchmark": "^2.1.4",
+ "coveralls": "^3.1.0",
+ "eslint": "^7.5.0",
+ "eslint-config-airbnb": "^18.2.0",
+ "eslint-config-airbnb-base": "^14.2.0",
+ "eslint-config-node": "^4.1.0",
+ "eslint-config-prettier": "^6.11.0",
+ "eslint-plugin-import": "^2.22.0",
+ "eslint-plugin-jsx-a11y": "^6.3.1",
+ "eslint-plugin-node": "^11.1.0",
+ "eslint-plugin-prettier": "^3.1.4",
+ "eslint-plugin-react": "^7.20.3",
+ "eslint-plugin-react-hooks": "^4.0.0",
+ "fast-levenshtein": "^2.0.6",
+ "jest": "^26.1.0",
+ "js-levenshtein": "^1.1.6",
+ "leven": "^3.1.0",
+ "natural": "^2.1.5",
+ "prettier": "^2.0.5",
+ "talisman": "^1.1.2",
+ "levenshtein-edit-distance": "^2.0.5"
+ }
+}
diff --git a/deps/npm/node_modules/fastest-levenshtein/test.js b/deps/npm/node_modules/fastest-levenshtein/test.js
new file mode 100644
index 0000000000..4b5d6ecae6
--- /dev/null
+++ b/deps/npm/node_modules/fastest-levenshtein/test.js
@@ -0,0 +1,64 @@
+const {distance, closest} = require("./index.js");
+
+const levenshtein = (a, b) => {
+ if (a.length === 0) return b.length;
+ if (b.length === 0) return a.length;
+
+ if (a.length > b.length) {
+ const tmp = a;
+ a = b;
+ b = tmp;
+ }
+
+ const row = [];
+ for (let i = 0; i <= a.length; i++) {
+ row[i] = i;
+ }
+
+ for (let i = 1; i <= b.length; i++) {
+ let prev = i;
+ for (let j = 1; j <= a.length; j++) {
+ let val;
+ if (b.charAt(i - 1) === a.charAt(j - 1)) {
+ val = row[j - 1];
+ } else {
+ val = Math.min(row[j - 1] + 1, prev + 1, row[j] + 1);
+ }
+ row[j - 1] = prev;
+ prev = val;
+ }
+ row[a.length] = prev;
+ }
+
+ return row[a.length];
+};
+
+function makeid(length) {
+ let result = "";
+ const characters =
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+ const charactersLength = characters.length;
+ for (let i = 0; i < length; i++) {
+ result += characters.charAt(Math.floor(Math.random() * charactersLength));
+ }
+ return result;
+}
+
+test("test compare", () => {
+ const errors = 0;
+ for (let i = 0; i < 1000; i++) {
+ const rnd_num1 = (Math.random() * 1000) | 0;
+ const rnd_num2 = (Math.random() * 1000) | 0;
+ const rnd_string1 = makeid(rnd_num1);
+ const rnd_string2 = makeid(rnd_num2);
+ const actual = distance(rnd_string1, rnd_string2);
+ const expected = levenshtein(rnd_string1, rnd_string2);
+ expect(actual).toBe(expected);
+ }
+});
+
+test("test find", () => {
+ const actual = closest("fast", ["slow", "faster", "fastest"]);
+ const expected = "faster";
+ expect(actual).toBe(expected);
+});
diff --git a/deps/npm/node_modules/gauge/has-color.js b/deps/npm/node_modules/gauge/has-color.js
index e283a256f2..16cba0eb47 100644
--- a/deps/npm/node_modules/gauge/has-color.js
+++ b/deps/npm/node_modules/gauge/has-color.js
@@ -1,12 +1,4 @@
'use strict'
+var colorSupport = require('color-support')
-module.exports = isWin32() || isColorTerm()
-
-function isWin32 () {
- return process.platform === 'win32'
-}
-
-function isColorTerm () {
- var termHasColor = /^screen|^xterm|^vt100|color|ansi|cygwin|linux/i
- return !!process.env.COLORTERM || termHasColor.test(process.env.TERM)
-}
+module.exports = colorSupport().hasBasic
diff --git a/deps/npm/node_modules/gauge/index.js b/deps/npm/node_modules/gauge/index.js
index c55324008c..87a4bb9308 100644
--- a/deps/npm/node_modules/gauge/index.js
+++ b/deps/npm/node_modules/gauge/index.js
@@ -188,7 +188,7 @@ Gauge.prototype.show = function (section, completed) {
Gauge.prototype.pulse = function (subsection) {
this._status.subsection = subsection || ''
- this._status.spun ++
+ this._status.spun++
if (this._disabled) return
if (!this._showing) return
this._requestRedraw()
diff --git a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/readme.md b/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/readme.md
deleted file mode 100644
index 4936464b1b..0000000000
--- a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/readme.md
+++ /dev/null
@@ -1,39 +0,0 @@
-# is-fullwidth-code-point [![Build Status](https://travis-ci.org/sindresorhus/is-fullwidth-code-point.svg?branch=master)](https://travis-ci.org/sindresorhus/is-fullwidth-code-point)
-
-> Check if the character represented by a given [Unicode code point](https://en.wikipedia.org/wiki/Code_point) is [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms)
-
-
-## Install
-
-```
-$ npm install --save is-fullwidth-code-point
-```
-
-
-## Usage
-
-```js
-var isFullwidthCodePoint = require('is-fullwidth-code-point');
-
-isFullwidthCodePoint('谢'.codePointAt());
-//=> true
-
-isFullwidthCodePoint('a'.codePointAt());
-//=> false
-```
-
-
-## API
-
-### isFullwidthCodePoint(input)
-
-#### input
-
-Type: `number`
-
-[Code point](https://en.wikipedia.org/wiki/Code_point) of a character.
-
-
-## License
-
-MIT © [Sindre Sorhus](http://sindresorhus.com)
diff --git a/deps/npm/node_modules/gauge/node_modules/string-width/readme.md b/deps/npm/node_modules/gauge/node_modules/string-width/readme.md
deleted file mode 100644
index 1ab42c9358..0000000000
--- a/deps/npm/node_modules/gauge/node_modules/string-width/readme.md
+++ /dev/null
@@ -1,42 +0,0 @@
-# string-width [![Build Status](https://travis-ci.org/sindresorhus/string-width.svg?branch=master)](https://travis-ci.org/sindresorhus/string-width)
-
-> Get the visual width of a string - the number of columns required to display it
-
-Some Unicode characters are [fullwidth](https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms) and use double the normal width. [ANSI escape codes](http://en.wikipedia.org/wiki/ANSI_escape_code) are stripped and doesn't affect the width.
-
-Useful to be able to measure the actual width of command-line output.
-
-
-## Install
-
-```
-$ npm install --save string-width
-```
-
-
-## Usage
-
-```js
-const stringWidth = require('string-width');
-
-stringWidth('古');
-//=> 2
-
-stringWidth('\u001b[1m古\u001b[22m');
-//=> 2
-
-stringWidth('a');
-//=> 1
-```
-
-
-## Related
-
-- [string-width-cli](https://github.com/sindresorhus/string-width-cli) - CLI for this module
-- [string-length](https://github.com/sindresorhus/string-length) - Get the real length of a string
-- [widest-line](https://github.com/sindresorhus/widest-line) - Get the visual width of the widest line in a string
-
-
-## License
-
-MIT © [Sindre Sorhus](https://sindresorhus.com)
diff --git a/deps/npm/node_modules/gauge/package.json b/deps/npm/node_modules/gauge/package.json
index 4882cff839..5635aa179f 100644
--- a/deps/npm/node_modules/gauge/package.json
+++ b/deps/npm/node_modules/gauge/package.json
@@ -1,11 +1,10 @@
{
"name": "gauge",
- "version": "2.7.4",
+ "version": "3.0.1",
"description": "A terminal based horizontal guage",
"main": "index.js",
"scripts": {
- "test": "standard && tap test/*.js --coverage",
- "prepublish": "rm -f *~"
+ "test": "standard && tap test/*.js --coverage"
},
"repository": {
"type": "git",
@@ -19,24 +18,25 @@
"author": "Rebecca Turner <me@re-becca.org>",
"license": "ISC",
"bugs": {
- "url": "https://github.com/iarna/gauge/issues"
+ "url": "https://github.com/npm/gauge/issues"
},
- "homepage": "https://github.com/iarna/gauge",
+ "homepage": "https://github.com/npm/gauge",
"dependencies": {
- "aproba": "^1.0.3",
+ "aproba": "^1.0.3 || ^2.0.0",
+ "color-support": "^1.1.2",
"console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.0",
- "object-assign": "^4.1.0",
+ "has-unicode": "^2.0.1",
+ "object-assign": "^4.1.1",
"signal-exit": "^3.0.0",
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wide-align": "^1.1.0"
+ "string-width": "^1.0.1 || ^2.0.0",
+ "strip-ansi": "^3.0.1 || ^4.0.0",
+ "wide-align": "^1.1.2"
},
"devDependencies": {
"readable-stream": "^2.0.6",
"require-inject": "^1.4.0",
- "standard": "^7.1.2",
- "tap": "^5.7.2",
+ "standard": "^11.0.1",
+ "tap": "^12.0.1",
"through2": "^2.0.0"
},
"files": [
@@ -59,5 +59,8 @@
"theme-set.js",
"themes.js",
"wide-truncate.js"
- ]
+ ],
+ "engines": {
+ "node": ">=10"
+ }
}
diff --git a/deps/npm/node_modules/gauge/progress-bar.js b/deps/npm/node_modules/gauge/progress-bar.js
index 7f8dd68be2..1780a8a54d 100644
--- a/deps/npm/node_modules/gauge/progress-bar.js
+++ b/deps/npm/node_modules/gauge/progress-bar.js
@@ -27,7 +27,7 @@ function repeat (string, width) {
result += string
}
n = Math.floor(n / 2)
- /*eslint no-self-assign: 0*/
+ /* eslint no-self-assign: 0 */
string += string
} while (n && stringWidth(result) < width)
diff --git a/deps/npm/node_modules/gauge/render-template.js b/deps/npm/node_modules/gauge/render-template.js
index 3261bfbe6f..9764c6e0a1 100644
--- a/deps/npm/node_modules/gauge/render-template.js
+++ b/deps/npm/node_modules/gauge/render-template.js
@@ -1,7 +1,6 @@
'use strict'
var align = require('wide-align')
var validate = require('aproba')
-var objectAssign = require('object-assign')
var wideTruncate = require('./wide-truncate')
var error = require('./error')
var TemplateItem = require('./template-item')
@@ -34,7 +33,7 @@ function hasPreOrPost (item, values) {
}
function generatePreAndPost (baseItem, parentValues) {
- var item = objectAssign({}, baseItem)
+ var item = Object.assign({}, baseItem)
var values = Object.create(parentValues)
var template = []
var pre = preType(item)
@@ -82,13 +81,11 @@ function prepareItems (width, template, values) {
var output = template.map(cloneAndObjectify).filter(function (item) { return item != null })
- var outputLength = 0
var remainingSpace = width
var variableCount = output.length
function consumeSpace (length) {
if (length > remainingSpace) length = remainingSpace
- outputLength += length
remainingSpace -= length
}
diff --git a/deps/npm/node_modules/gauge/template-item.js b/deps/npm/node_modules/gauge/template-item.js
index e46f447c94..4f02fefaa2 100644
--- a/deps/npm/node_modules/gauge/template-item.js
+++ b/deps/npm/node_modules/gauge/template-item.js
@@ -70,4 +70,3 @@ TemplateItem.prototype.getMinLength = function () {
if (this.minLength == null) return null
return this.minLength + this.padLeft + this.padRight
}
-
diff --git a/deps/npm/node_modules/gauge/theme-set.js b/deps/npm/node_modules/gauge/theme-set.js
index 68971d5d23..c022d61cf1 100644
--- a/deps/npm/node_modules/gauge/theme-set.js
+++ b/deps/npm/node_modules/gauge/theme-set.js
@@ -112,4 +112,3 @@ ThemeSetProto.newThemeSet = function () {
defaults: JSON.parse(JSON.stringify(this.defaults || {}))
})
}
-
diff --git a/deps/npm/node_modules/gauge/themes.js b/deps/npm/node_modules/gauge/themes.js
index eb5a4f5b5e..df1184db51 100644
--- a/deps/npm/node_modules/gauge/themes.js
+++ b/deps/npm/node_modules/gauge/themes.js
@@ -1,5 +1,5 @@
'use strict'
-var consoleControl = require('console-control-strings')
+var color = require('console-control-strings').color
var ThemeSet = require('./theme-set.js')
var themes = module.exports = new ThemeSet()
@@ -17,12 +17,12 @@ themes.addTheme('ASCII', {
themes.addTheme('colorASCII', themes.getTheme('ASCII'), {
progressbarTheme: {
- preComplete: consoleControl.color('inverse'),
- complete: ' ',
- postComplete: consoleControl.color('stopInverse'),
- preRemaining: consoleControl.color('brightBlack'),
+ preComplete: color('bgBrightWhite', 'brightWhite'),
+ complete: '#',
+ postComplete: color('reset'),
+ preRemaining: color('bgBrightBlack', 'brightBlack'),
remaining: '.',
- postRemaining: consoleControl.color('reset')
+ postRemaining: color('reset')
}
})
@@ -30,7 +30,7 @@ themes.addTheme('brailleSpinner', {
preProgressbar: '⸨',
postProgressbar: '⸩',
progressbarTheme: {
- complete: '░',
+ complete: '#',
remaining: '⠂'
},
activityIndicatorTheme: '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏',
@@ -39,12 +39,12 @@ themes.addTheme('brailleSpinner', {
themes.addTheme('colorBrailleSpinner', themes.getTheme('brailleSpinner'), {
progressbarTheme: {
- preComplete: consoleControl.color('inverse'),
- complete: ' ',
- postComplete: consoleControl.color('stopInverse'),
- preRemaining: consoleControl.color('brightBlack'),
- remaining: '░',
- postRemaining: consoleControl.color('reset')
+ preComplete: color('bgBrightWhite', 'brightWhite'),
+ complete: '#',
+ postComplete: color('reset'),
+ preRemaining: color('bgBrightBlack', 'brightBlack'),
+ remaining: '⠂',
+ postRemaining: color('reset')
}
})
@@ -52,3 +52,5 @@ themes.setDefault({}, 'ASCII')
themes.setDefault({hasColor: true}, 'colorASCII')
themes.setDefault({platform: 'darwin', hasUnicode: true}, 'brailleSpinner')
themes.setDefault({platform: 'darwin', hasUnicode: true, hasColor: true}, 'colorBrailleSpinner')
+themes.setDefault({platform: 'linux', hasUnicode: true}, 'brailleSpinner')
+themes.setDefault({platform: 'linux', hasUnicode: true, hasColor: true}, 'colorBrailleSpinner')
diff --git a/deps/npm/node_modules/graceful-fs/graceful-fs.js b/deps/npm/node_modules/graceful-fs/graceful-fs.js
index e15042da91..947cd94bb4 100644
--- a/deps/npm/node_modules/graceful-fs/graceful-fs.js
+++ b/deps/npm/node_modules/graceful-fs/graceful-fs.js
@@ -54,7 +54,7 @@ if (!fs[gracefulQueue]) {
return fs$close.call(fs, fd, function (err) {
// This function uses the graceful-fs shared queue
if (!err) {
- retry()
+ resetQueue()
}
if (typeof cb === 'function')
@@ -72,7 +72,7 @@ if (!fs[gracefulQueue]) {
function closeSync (fd) {
// This function uses the graceful-fs shared queue
fs$closeSync.apply(fs, arguments)
- retry()
+ resetQueue()
}
Object.defineProperty(closeSync, previousSymbol, {
@@ -114,14 +114,13 @@ function patch (fs) {
return go$readFile(path, options, cb)
- function go$readFile (path, options, cb) {
+ function go$readFile (path, options, cb, startTime) {
return fs$readFile(path, options, function (err) {
if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([go$readFile, [path, options, cb]])
+ enqueue([go$readFile, [path, options, cb], err, startTime || Date.now(), Date.now()])
else {
if (typeof cb === 'function')
cb.apply(this, arguments)
- retry()
}
})
}
@@ -135,14 +134,13 @@ function patch (fs) {
return go$writeFile(path, data, options, cb)
- function go$writeFile (path, data, options, cb) {
+ function go$writeFile (path, data, options, cb, startTime) {
return fs$writeFile(path, data, options, function (err) {
if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([go$writeFile, [path, data, options, cb]])
+ enqueue([go$writeFile, [path, data, options, cb], err, startTime || Date.now(), Date.now()])
else {
if (typeof cb === 'function')
cb.apply(this, arguments)
- retry()
}
})
}
@@ -157,14 +155,13 @@ function patch (fs) {
return go$appendFile(path, data, options, cb)
- function go$appendFile (path, data, options, cb) {
+ function go$appendFile (path, data, options, cb, startTime) {
return fs$appendFile(path, data, options, function (err) {
if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([go$appendFile, [path, data, options, cb]])
+ enqueue([go$appendFile, [path, data, options, cb], err, startTime || Date.now(), Date.now()])
else {
if (typeof cb === 'function')
cb.apply(this, arguments)
- retry()
}
})
}
@@ -178,49 +175,43 @@ function patch (fs) {
cb = flags
flags = 0
}
- return fs$copyFile(src, dest, flags, function (err) {
- if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([fs$copyFile, [src, dest, flags, cb]])
- else {
- if (typeof cb === 'function')
- cb.apply(this, arguments)
- retry()
- }
- })
+ return go$copyFile(src, dest, flags, cb)
+
+ function go$copyFile (src, dest, flags, cb, startTime) {
+ return fs$copyFile(src, dest, flags, function (err) {
+ if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
+ enqueue([go$copyFile, [src, dest, flags, cb], err, startTime || Date.now(), Date.now()])
+ else {
+ if (typeof cb === 'function')
+ cb.apply(this, arguments)
+ }
+ })
+ }
}
var fs$readdir = fs.readdir
fs.readdir = readdir
function readdir (path, options, cb) {
- var args = [path]
- if (typeof options !== 'function') {
- args.push(options)
- } else {
- cb = options
- }
- args.push(go$readdir$cb)
-
- return go$readdir(args)
+ if (typeof options === 'function')
+ cb = options, options = null
- function go$readdir$cb (err, files) {
- if (files && files.sort)
- files.sort()
+ return go$readdir(path, options, cb)
- if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([go$readdir, [args]])
+ function go$readdir (path, options, cb, startTime) {
+ return fs$readdir(path, options, function (err, files) {
+ if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
+ enqueue([go$readdir, [path, options, cb], err, startTime || Date.now(), Date.now()])
+ else {
+ if (files && files.sort)
+ files.sort()
- else {
- if (typeof cb === 'function')
- cb.apply(this, arguments)
- retry()
- }
+ if (typeof cb === 'function')
+ cb.call(this, err, files)
+ }
+ })
}
}
- function go$readdir (args) {
- return fs$readdir.apply(fs, args)
- }
-
if (process.version.substr(0, 4) === 'v0.8') {
var legStreams = legacy(fs)
ReadStream = legStreams.ReadStream
@@ -343,14 +334,13 @@ function patch (fs) {
return go$open(path, flags, mode, cb)
- function go$open (path, flags, mode, cb) {
+ function go$open (path, flags, mode, cb, startTime) {
return fs$open(path, flags, mode, function (err, fd) {
if (err && (err.code === 'EMFILE' || err.code === 'ENFILE'))
- enqueue([go$open, [path, flags, mode, cb]])
+ enqueue([go$open, [path, flags, mode, cb], err, startTime || Date.now(), Date.now()])
else {
if (typeof cb === 'function')
cb.apply(this, arguments)
- retry()
}
})
}
@@ -362,12 +352,78 @@ function patch (fs) {
function enqueue (elem) {
debug('ENQUEUE', elem[0].name, elem[1])
fs[gracefulQueue].push(elem)
+ retry()
+}
+
+// keep track of the timeout between retry() calls
+var retryTimer
+
+// reset the startTime and lastTime to now
+// this resets the start of the 60 second overall timeout as well as the
+// delay between attempts so that we'll retry these jobs sooner
+function resetQueue () {
+ var now = Date.now()
+ for (var i = 0; i < fs[gracefulQueue].length; ++i) {
+ // entries that are only a length of 2 are from an older version, don't
+ // bother modifying those since they'll be retried anyway.
+ if (fs[gracefulQueue][i].length > 2) {
+ fs[gracefulQueue][i][3] = now // startTime
+ fs[gracefulQueue][i][4] = now // lastTime
+ }
+ }
+ // call retry to make sure we're actively processing the queue
+ retry()
}
function retry () {
+ // clear the timer and remove it to help prevent unintended concurrency
+ clearTimeout(retryTimer)
+ retryTimer = undefined
+
+ if (fs[gracefulQueue].length === 0)
+ return
+
var elem = fs[gracefulQueue].shift()
- if (elem) {
- debug('RETRY', elem[0].name, elem[1])
- elem[0].apply(null, elem[1])
+ var fn = elem[0]
+ var args = elem[1]
+ // these items may be unset if they were added by an older graceful-fs
+ var err = elem[2]
+ var startTime = elem[3]
+ var lastTime = elem[4]
+
+ // if we don't have a startTime we have no way of knowing if we've waited
+ // long enough, so go ahead and retry this item now
+ if (startTime === undefined) {
+ debug('RETRY', fn.name, args)
+ fn.apply(null, args)
+ } else if (Date.now() - startTime >= 60000) {
+ // it's been more than 60 seconds total, bail now
+ debug('TIMEOUT', fn.name, args)
+ var cb = args.pop()
+ if (typeof cb === 'function')
+ cb.call(null, err)
+ } else {
+ // the amount of time between the last attempt and right now
+ var sinceAttempt = Date.now() - lastTime
+ // the amount of time between when we first tried, and when we last tried
+ // rounded up to at least 1
+ var sinceStart = Math.max(lastTime - startTime, 1)
+ // backoff. wait longer than the total time we've been retrying, but only
+ // up to a maximum of 100ms
+ var desiredDelay = Math.min(sinceStart * 1.2, 100)
+ // it's been long enough since the last retry, do it again
+ if (sinceAttempt >= desiredDelay) {
+ debug('RETRY', fn.name, args)
+ fn.apply(null, args.concat([startTime]))
+ } else {
+ // if we can't do this job yet, push it to the end of the queue
+ // and let the next iteration check again
+ fs[gracefulQueue].push(elem)
+ }
+ }
+
+ // schedule our next run if one isn't already scheduled
+ if (retryTimer === undefined) {
+ retryTimer = setTimeout(retry, 0)
}
}
diff --git a/deps/npm/node_modules/graceful-fs/package.json b/deps/npm/node_modules/graceful-fs/package.json
index d73f971fc2..032c7d0b58 100644
--- a/deps/npm/node_modules/graceful-fs/package.json
+++ b/deps/npm/node_modules/graceful-fs/package.json
@@ -1,7 +1,7 @@
{
"name": "graceful-fs",
"description": "A drop-in replacement for fs, making various improvements.",
- "version": "4.2.6",
+ "version": "4.2.8",
"repository": {
"type": "git",
"url": "https://github.com/isaacs/node-graceful-fs"
diff --git a/deps/npm/node_modules/init-package-json/package.json b/deps/npm/node_modules/init-package-json/package.json
index 584e313b4c..0e07f48f49 100644
--- a/deps/npm/node_modules/init-package-json/package.json
+++ b/deps/npm/node_modules/init-package-json/package.json
@@ -1,6 +1,6 @@
{
"name": "init-package-json",
- "version": "2.0.3",
+ "version": "2.0.4",
"main": "init-package-json.js",
"scripts": {
"test": "tap",
@@ -20,7 +20,7 @@
"npm-package-arg": "^8.1.2",
"promzard": "^0.3.0",
"read": "~1.0.1",
- "read-package-json": "^3.0.1",
+ "read-package-json": "^4.0.0",
"semver": "^7.3.5",
"validate-npm-package-license": "^3.0.4",
"validate-npm-package-name": "^3.0.0"
diff --git a/deps/npm/node_modules/is-core-module/core.json b/deps/npm/node_modules/is-core-module/core.json
index 44a92a1a41..ec741dd946 100644
--- a/deps/npm/node_modules/is-core-module/core.json
+++ b/deps/npm/node_modules/is-core-module/core.json
@@ -100,8 +100,12 @@
"node:_stream_writable": ">= 16",
"stream": true,
"node:stream": ">= 16",
+ "stream/consumers": ">= 16.7",
+ "node:stream/consumers": ">= 16.7",
"stream/promises": ">= 15",
"node:stream/promises": ">= 16",
+ "stream/web": ">= 16.5",
+ "node:stream/web": ">= 16.5",
"string_decoder": true,
"node:string_decoder": ">= 16",
"sys": [">= 0.6 && < 0.7", ">= 0.8"],
diff --git a/deps/npm/node_modules/is-core-module/index.js b/deps/npm/node_modules/is-core-module/index.js
index f5a69cf765..f9637e0e7d 100644
--- a/deps/npm/node_modules/is-core-module/index.js
+++ b/deps/npm/node_modules/is-core-module/index.js
@@ -44,7 +44,7 @@ function versionIncluded(nodeVersion, specifierValue) {
}
var current = typeof nodeVersion === 'undefined'
- ? process.versions && process.versions.node && process.versions.node
+ ? process.versions && process.versions.node
: nodeVersion;
if (typeof current !== 'string') {
diff --git a/deps/npm/node_modules/is-core-module/package.json b/deps/npm/node_modules/is-core-module/package.json
index 0442e92cd2..a12bd4889a 100644
--- a/deps/npm/node_modules/is-core-module/package.json
+++ b/deps/npm/node_modules/is-core-module/package.json
@@ -1,6 +1,6 @@
{
"name": "is-core-module",
- "version": "2.4.0",
+ "version": "2.6.0",
"description": "Is this specifier a node.js core module?",
"main": "index.js",
"exports": {
@@ -50,12 +50,12 @@
"devDependencies": {
"@ljharb/eslint-config": "^17.6.0",
"aud": "^1.1.5",
- "auto-changelog": "^2.2.1",
- "eslint": "^7.26.0",
+ "auto-changelog": "^2.3.0",
+ "eslint": "^7.32.0",
"nyc": "^10.3.2",
"safe-publish-latest": "^1.1.4",
"semver": "^6.3.0",
- "tape": "^5.2.2"
+ "tape": "^5.3.1"
},
"auto-changelog": {
"output": "CHANGELOG.md",
diff --git a/deps/npm/node_modules/is-core-module/test/index.js b/deps/npm/node_modules/is-core-module/test/index.js
index 281c7e9a4b..59a0055e72 100644
--- a/deps/npm/node_modules/is-core-module/test/index.js
+++ b/deps/npm/node_modules/is-core-module/test/index.js
@@ -6,7 +6,7 @@ var semver = require('semver');
var isCore = require('../');
var data = require('../core.json');
-var supportsNodePrefix = semver.satisfies(process.versions.node, '>= 16');
+var supportsNodePrefix = semver.satisfies(process.versions.node, '>= 16', { includePrerelease: true });
test('core modules', function (t) {
t.test('isCore()', function (st) {
diff --git a/deps/npm/node_modules/leven/index.d.ts b/deps/npm/node_modules/leven/index.d.ts
deleted file mode 100644
index 571833ae44..0000000000
--- a/deps/npm/node_modules/leven/index.d.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-declare const leven: {
- /**
- Measure the difference between two strings.
-
- @example
- ```
- import leven = require('leven');
-
- leven('cat', 'cow');
- //=> 2
- ```
- */
- (left: string, right: string): number;
-
- // TODO: Remove this for the next major release, refactor the whole definition to:
- // declare function leven(left: string, right: string): number;
- // export = leven;
- default: typeof leven;
-};
-
-export = leven;
diff --git a/deps/npm/node_modules/leven/index.js b/deps/npm/node_modules/leven/index.js
deleted file mode 100644
index 25f5a3d5c8..0000000000
--- a/deps/npm/node_modules/leven/index.js
+++ /dev/null
@@ -1,77 +0,0 @@
-'use strict';
-const array = [];
-const charCodeCache = [];
-
-const leven = (left, right) => {
- if (left === right) {
- return 0;
- }
-
- const swap = left;
-
- // Swapping the strings if `a` is longer than `b` so we know which one is the
- // shortest & which one is the longest
- if (left.length > right.length) {
- left = right;
- right = swap;
- }
-
- let leftLength = left.length;
- let rightLength = right.length;
-
- // Performing suffix trimming:
- // We can linearly drop suffix common to both strings since they
- // don't increase distance at all
- // Note: `~-` is the bitwise way to perform a `- 1` operation
- while (leftLength > 0 && (left.charCodeAt(~-leftLength) === right.charCodeAt(~-rightLength))) {
- leftLength--;
- rightLength--;
- }
-
- // Performing prefix trimming
- // We can linearly drop prefix common to both strings since they
- // don't increase distance at all
- let start = 0;
-
- while (start < leftLength && (left.charCodeAt(start) === right.charCodeAt(start))) {
- start++;
- }
-
- leftLength -= start;
- rightLength -= start;
-
- if (leftLength === 0) {
- return rightLength;
- }
-
- let bCharCode;
- let result;
- let temp;
- let temp2;
- let i = 0;
- let j = 0;
-
- while (i < leftLength) {
- charCodeCache[i] = left.charCodeAt(start + i);
- array[i] = ++i;
- }
-
- while (j < rightLength) {
- bCharCode = right.charCodeAt(start + j);
- temp = j++;
- result = j;
-
- for (i = 0; i < leftLength; i++) {
- temp2 = bCharCode === charCodeCache[i] ? temp : temp + 1;
- temp = array[i];
- // eslint-disable-next-line no-multi-assign
- result = array[i] = temp > result ? temp2 > result ? result + 1 : temp2 : temp2 > temp ? temp + 1 : temp2;
- }
- }
-
- return result;
-};
-
-module.exports = leven;
-// TODO: Remove this for the next major release
-module.exports.default = leven;
diff --git a/deps/npm/node_modules/leven/license b/deps/npm/node_modules/leven/license
deleted file mode 100644
index e7af2f7710..0000000000
--- a/deps/npm/node_modules/leven/license
+++ /dev/null
@@ -1,9 +0,0 @@
-MIT License
-
-Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/deps/npm/node_modules/leven/package.json b/deps/npm/node_modules/leven/package.json
deleted file mode 100644
index e1b3d8ee0c..0000000000
--- a/deps/npm/node_modules/leven/package.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "name": "leven",
- "version": "3.1.0",
- "description": "Measure the difference between two strings using the fastest JS implementation of the Levenshtein distance algorithm",
- "license": "MIT",
- "repository": "sindresorhus/leven",
- "author": {
- "name": "Sindre Sorhus",
- "email": "sindresorhus@gmail.com",
- "url": "sindresorhus.com"
- },
- "engines": {
- "node": ">=6"
- },
- "scripts": {
- "test": "xo && ava && tsd",
- "bench": "matcha bench.js"
- },
- "files": [
- "index.js",
- "index.d.ts"
- ],
- "keywords": [
- "leven",
- "levenshtein",
- "distance",
- "algorithm",
- "algo",
- "string",
- "difference",
- "diff",
- "fast",
- "fuzzy",
- "similar",
- "similarity",
- "compare",
- "comparison",
- "edit",
- "text",
- "match",
- "matching"
- ],
- "devDependencies": {
- "ava": "^1.4.1",
- "fast-levenshtein": "^2.0.6",
- "ld": "^0.1.0",
- "levdist": "^2.2.9",
- "levenshtein": "^1.0.5",
- "levenshtein-component": "^0.0.1",
- "levenshtein-edit-distance": "^2.0.3",
- "matcha": "^0.7.0",
- "natural": "^0.6.3",
- "talisman": "^0.21.0",
- "tsd": "^0.7.2",
- "xo": "^0.24.0"
- }
-}
diff --git a/deps/npm/node_modules/leven/readme.md b/deps/npm/node_modules/leven/readme.md
deleted file mode 100644
index 33625c46f0..0000000000
--- a/deps/npm/node_modules/leven/readme.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# leven [![Build Status](https://travis-ci.org/sindresorhus/leven.svg?branch=master)](https://travis-ci.org/sindresorhus/leven)
-
-> Measure the difference between two strings<br>
-> One of the fastest JS implementations of the [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance) algorithm
-
-
-## Install
-
-```
-$ npm install leven
-```
-
-
-## Usage
-
-```js
-const leven = require('leven');
-
-leven('cat', 'cow');
-//=> 2
-```
-
-
-## Benchmark
-
-```
-$ npm run bench
-```
-
-```
- 165,926 op/s » leven
- 164,398 op/s » talisman
- 1,044 op/s » levenshtein-edit-distance
- 628 op/s » fast-levenshtein
- 497 op/s » levenshtein-component
- 195 op/s » ld
- 190 op/s » levenshtein
- 168 op/s » levdist
- 10 op/s » natural
-```
-
-
-## Related
-
-- [leven-cli](https://github.com/sindresorhus/leven-cli) - CLI for this module
-
-
-## License
-
-MIT © [Sindre Sorhus](https://sindresorhus.com)
diff --git a/deps/npm/node_modules/libnpmdiff/README.md b/deps/npm/node_modules/libnpmdiff/README.md
index da6bf53842..d48ac092ca 100644
--- a/deps/npm/node_modules/libnpmdiff/README.md
+++ b/deps/npm/node_modules/libnpmdiff/README.md
@@ -61,7 +61,7 @@ hesitate to jump in if you'd like to, or even ask us questions if something
isn't clear.
All participants and maintainers in this project are expected to follow the
-[npm Code of Conduct](https://www.npmjs.com/policies/conduct), and just
+[npm Code of Conduct](https://docs.npmjs.com/policies/conduct), and just
generally be excellent to each other.
Please refer to the [Changelog](CHANGELOG.md) for project history details, too.
diff --git a/deps/npm/node_modules/libnpmexec/lib/index.js b/deps/npm/node_modules/libnpmexec/lib/index.js
index 57c2a148d3..3f1463d767 100644
--- a/deps/npm/node_modules/libnpmexec/lib/index.js
+++ b/deps/npm/node_modules/libnpmexec/lib/index.js
@@ -165,6 +165,8 @@ const exec = async (opts) => {
const prompt = `Need to install the following packages:\n${
addList
}Ok to proceed? `
+ if (typeof log.clearProgress === 'function')
+ log.clearProgress()
const confirm = await read({ prompt, default: 'y' })
if (confirm.trim().toLowerCase().charAt(0) !== 'y')
throw new Error('canceled')
diff --git a/deps/npm/node_modules/libnpmexec/package.json b/deps/npm/node_modules/libnpmexec/package.json
index dff91077d1..2668f11731 100644
--- a/deps/npm/node_modules/libnpmexec/package.json
+++ b/deps/npm/node_modules/libnpmexec/package.json
@@ -1,6 +1,6 @@
{
"name": "libnpmexec",
- "version": "2.0.0",
+ "version": "2.0.1",
"files": [
"lib"
],
diff --git a/deps/npm/node_modules/make-fetch-happen/package.json b/deps/npm/node_modules/make-fetch-happen/package.json
index e4a26a9cd9..013156756e 100644
--- a/deps/npm/node_modules/make-fetch-happen/package.json
+++ b/deps/npm/node_modules/make-fetch-happen/package.json
@@ -1,6 +1,6 @@
{
"name": "make-fetch-happen",
- "version": "9.0.4",
+ "version": "9.0.5",
"description": "Opinionated, caching, retrying fetch client",
"main": "lib/index.js",
"files": [
@@ -47,7 +47,7 @@
"minipass-pipeline": "^1.2.4",
"negotiator": "^0.6.2",
"promise-retry": "^2.0.1",
- "socks-proxy-agent": "^5.0.0",
+ "socks-proxy-agent": "^6.0.0",
"ssri": "^8.0.0"
},
"devDependencies": {
@@ -58,7 +58,7 @@
"eslint-plugin-standard": "^5.0.0",
"mkdirp": "^1.0.4",
"nock": "^13.0.11",
- "npmlog": "^4.1.2",
+ "npmlog": "^5.0.0",
"require-inject": "^1.4.2",
"rimraf": "^3.0.2",
"safe-buffer": "^5.2.1",
diff --git a/deps/npm/node_modules/gauge/node_modules/aproba/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/aproba/LICENSE
index f4be44d881..2a4982dc40 100644
--- a/deps/npm/node_modules/gauge/node_modules/aproba/LICENSE
+++ b/deps/npm/node_modules/node-gyp/node_modules/aproba/LICENSE
@@ -11,4 +11,3 @@ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
diff --git a/deps/npm/node_modules/gauge/node_modules/aproba/index.js b/deps/npm/node_modules/node-gyp/node_modules/aproba/index.js
index 6f3f797c09..6f3f797c09 100644
--- a/deps/npm/node_modules/gauge/node_modules/aproba/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/aproba/index.js
diff --git a/deps/npm/node_modules/gauge/node_modules/aproba/package.json b/deps/npm/node_modules/node-gyp/node_modules/aproba/package.json
index f008787bc2..f008787bc2 100644
--- a/deps/npm/node_modules/gauge/node_modules/aproba/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/aproba/package.json
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/gauge/LICENSE
new file mode 100644
index 0000000000..e756052969
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/LICENSE
@@ -0,0 +1,13 @@
+Copyright (c) 2014, Rebecca Turner <me@re-becca.org>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/base-theme.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/base-theme.js
new file mode 100644
index 0000000000..0b67638e02
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/base-theme.js
@@ -0,0 +1,14 @@
+'use strict'
+var spin = require('./spin.js')
+var progressBar = require('./progress-bar.js')
+
+module.exports = {
+ activityIndicator: function (values, theme, width) {
+ if (values.spun == null) return
+ return spin(theme, values.spun)
+ },
+ progressbar: function (values, theme, width) {
+ if (values.completed == null) return
+ return progressBar(theme, width, values.completed)
+ }
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/error.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/error.js
new file mode 100644
index 0000000000..d9914ba533
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/error.js
@@ -0,0 +1,24 @@
+'use strict'
+var util = require('util')
+
+var User = exports.User = function User (msg) {
+ var err = new Error(msg)
+ Error.captureStackTrace(err, User)
+ err.code = 'EGAUGE'
+ return err
+}
+
+exports.MissingTemplateValue = function MissingTemplateValue (item, values) {
+ var err = new User(util.format('Missing template value "%s"', item.type))
+ Error.captureStackTrace(err, MissingTemplateValue)
+ err.template = item
+ err.values = values
+ return err
+}
+
+exports.Internal = function Internal (msg) {
+ var err = new Error(msg)
+ Error.captureStackTrace(err, Internal)
+ err.code = 'EGAUGEINTERNAL'
+ return err
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/has-color.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/has-color.js
new file mode 100644
index 0000000000..e283a256f2
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/has-color.js
@@ -0,0 +1,12 @@
+'use strict'
+
+module.exports = isWin32() || isColorTerm()
+
+function isWin32 () {
+ return process.platform === 'win32'
+}
+
+function isColorTerm () {
+ var termHasColor = /^screen|^xterm|^vt100|color|ansi|cygwin|linux/i
+ return !!process.env.COLORTERM || termHasColor.test(process.env.TERM)
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/index.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/index.js
new file mode 100644
index 0000000000..c55324008c
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/index.js
@@ -0,0 +1,233 @@
+'use strict'
+var Plumbing = require('./plumbing.js')
+var hasUnicode = require('has-unicode')
+var hasColor = require('./has-color.js')
+var onExit = require('signal-exit')
+var defaultThemes = require('./themes')
+var setInterval = require('./set-interval.js')
+var process = require('./process.js')
+var setImmediate = require('./set-immediate')
+
+module.exports = Gauge
+
+function callWith (obj, method) {
+ return function () {
+ return method.call(obj)
+ }
+}
+
+function Gauge (arg1, arg2) {
+ var options, writeTo
+ if (arg1 && arg1.write) {
+ writeTo = arg1
+ options = arg2 || {}
+ } else if (arg2 && arg2.write) {
+ writeTo = arg2
+ options = arg1 || {}
+ } else {
+ writeTo = process.stderr
+ options = arg1 || arg2 || {}
+ }
+
+ this._status = {
+ spun: 0,
+ section: '',
+ subsection: ''
+ }
+ this._paused = false // are we paused for back pressure?
+ this._disabled = true // are all progress bar updates disabled?
+ this._showing = false // do we WANT the progress bar on screen
+ this._onScreen = false // IS the progress bar on screen
+ this._needsRedraw = false // should we print something at next tick?
+ this._hideCursor = options.hideCursor == null ? true : options.hideCursor
+ this._fixedFramerate = options.fixedFramerate == null
+ ? !(/^v0\.8\./.test(process.version))
+ : options.fixedFramerate
+ this._lastUpdateAt = null
+ this._updateInterval = options.updateInterval == null ? 50 : options.updateInterval
+
+ this._themes = options.themes || defaultThemes
+ this._theme = options.theme
+ var theme = this._computeTheme(options.theme)
+ var template = options.template || [
+ {type: 'progressbar', length: 20},
+ {type: 'activityIndicator', kerning: 1, length: 1},
+ {type: 'section', kerning: 1, default: ''},
+ {type: 'subsection', kerning: 1, default: ''}
+ ]
+ this.setWriteTo(writeTo, options.tty)
+ var PlumbingClass = options.Plumbing || Plumbing
+ this._gauge = new PlumbingClass(theme, template, this.getWidth())
+
+ this._$$doRedraw = callWith(this, this._doRedraw)
+ this._$$handleSizeChange = callWith(this, this._handleSizeChange)
+
+ this._cleanupOnExit = options.cleanupOnExit == null || options.cleanupOnExit
+ this._removeOnExit = null
+
+ if (options.enabled || (options.enabled == null && this._tty && this._tty.isTTY)) {
+ this.enable()
+ } else {
+ this.disable()
+ }
+}
+Gauge.prototype = {}
+
+Gauge.prototype.isEnabled = function () {
+ return !this._disabled
+}
+
+Gauge.prototype.setTemplate = function (template) {
+ this._gauge.setTemplate(template)
+ if (this._showing) this._requestRedraw()
+}
+
+Gauge.prototype._computeTheme = function (theme) {
+ if (!theme) theme = {}
+ if (typeof theme === 'string') {
+ theme = this._themes.getTheme(theme)
+ } else if (theme && (Object.keys(theme).length === 0 || theme.hasUnicode != null || theme.hasColor != null)) {
+ var useUnicode = theme.hasUnicode == null ? hasUnicode() : theme.hasUnicode
+ var useColor = theme.hasColor == null ? hasColor : theme.hasColor
+ theme = this._themes.getDefault({hasUnicode: useUnicode, hasColor: useColor, platform: theme.platform})
+ }
+ return theme
+}
+
+Gauge.prototype.setThemeset = function (themes) {
+ this._themes = themes
+ this.setTheme(this._theme)
+}
+
+Gauge.prototype.setTheme = function (theme) {
+ this._gauge.setTheme(this._computeTheme(theme))
+ if (this._showing) this._requestRedraw()
+ this._theme = theme
+}
+
+Gauge.prototype._requestRedraw = function () {
+ this._needsRedraw = true
+ if (!this._fixedFramerate) this._doRedraw()
+}
+
+Gauge.prototype.getWidth = function () {
+ return ((this._tty && this._tty.columns) || 80) - 1
+}
+
+Gauge.prototype.setWriteTo = function (writeTo, tty) {
+ var enabled = !this._disabled
+ if (enabled) this.disable()
+ this._writeTo = writeTo
+ this._tty = tty ||
+ (writeTo === process.stderr && process.stdout.isTTY && process.stdout) ||
+ (writeTo.isTTY && writeTo) ||
+ this._tty
+ if (this._gauge) this._gauge.setWidth(this.getWidth())
+ if (enabled) this.enable()
+}
+
+Gauge.prototype.enable = function () {
+ if (!this._disabled) return
+ this._disabled = false
+ if (this._tty) this._enableEvents()
+ if (this._showing) this.show()
+}
+
+Gauge.prototype.disable = function () {
+ if (this._disabled) return
+ if (this._showing) {
+ this._lastUpdateAt = null
+ this._showing = false
+ this._doRedraw()
+ this._showing = true
+ }
+ this._disabled = true
+ if (this._tty) this._disableEvents()
+}
+
+Gauge.prototype._enableEvents = function () {
+ if (this._cleanupOnExit) {
+ this._removeOnExit = onExit(callWith(this, this.disable))
+ }
+ this._tty.on('resize', this._$$handleSizeChange)
+ if (this._fixedFramerate) {
+ this.redrawTracker = setInterval(this._$$doRedraw, this._updateInterval)
+ if (this.redrawTracker.unref) this.redrawTracker.unref()
+ }
+}
+
+Gauge.prototype._disableEvents = function () {
+ this._tty.removeListener('resize', this._$$handleSizeChange)
+ if (this._fixedFramerate) clearInterval(this.redrawTracker)
+ if (this._removeOnExit) this._removeOnExit()
+}
+
+Gauge.prototype.hide = function (cb) {
+ if (this._disabled) return cb && process.nextTick(cb)
+ if (!this._showing) return cb && process.nextTick(cb)
+ this._showing = false
+ this._doRedraw()
+ cb && setImmediate(cb)
+}
+
+Gauge.prototype.show = function (section, completed) {
+ this._showing = true
+ if (typeof section === 'string') {
+ this._status.section = section
+ } else if (typeof section === 'object') {
+ var sectionKeys = Object.keys(section)
+ for (var ii = 0; ii < sectionKeys.length; ++ii) {
+ var key = sectionKeys[ii]
+ this._status[key] = section[key]
+ }
+ }
+ if (completed != null) this._status.completed = completed
+ if (this._disabled) return
+ this._requestRedraw()
+}
+
+Gauge.prototype.pulse = function (subsection) {
+ this._status.subsection = subsection || ''
+ this._status.spun ++
+ if (this._disabled) return
+ if (!this._showing) return
+ this._requestRedraw()
+}
+
+Gauge.prototype._handleSizeChange = function () {
+ this._gauge.setWidth(this._tty.columns - 1)
+ this._requestRedraw()
+}
+
+Gauge.prototype._doRedraw = function () {
+ if (this._disabled || this._paused) return
+ if (!this._fixedFramerate) {
+ var now = Date.now()
+ if (this._lastUpdateAt && now - this._lastUpdateAt < this._updateInterval) return
+ this._lastUpdateAt = now
+ }
+ if (!this._showing && this._onScreen) {
+ this._onScreen = false
+ var result = this._gauge.hide()
+ if (this._hideCursor) {
+ result += this._gauge.showCursor()
+ }
+ return this._writeTo.write(result)
+ }
+ if (!this._showing && !this._onScreen) return
+ if (this._showing && !this._onScreen) {
+ this._onScreen = true
+ this._needsRedraw = true
+ if (this._hideCursor) {
+ this._writeTo.write(this._gauge.hideCursor())
+ }
+ }
+ if (!this._needsRedraw) return
+ if (!this._writeTo.write(this._gauge.show(this._status))) {
+ this._paused = true
+ this._writeTo.on('drain', callWith(this, function () {
+ this._paused = false
+ this._doRedraw()
+ }))
+ }
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/package.json b/deps/npm/node_modules/node-gyp/node_modules/gauge/package.json
new file mode 100644
index 0000000000..4882cff839
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/package.json
@@ -0,0 +1,63 @@
+{
+ "name": "gauge",
+ "version": "2.7.4",
+ "description": "A terminal based horizontal guage",
+ "main": "index.js",
+ "scripts": {
+ "test": "standard && tap test/*.js --coverage",
+ "prepublish": "rm -f *~"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/iarna/gauge"
+ },
+ "keywords": [
+ "progressbar",
+ "progress",
+ "gauge"
+ ],
+ "author": "Rebecca Turner <me@re-becca.org>",
+ "license": "ISC",
+ "bugs": {
+ "url": "https://github.com/iarna/gauge/issues"
+ },
+ "homepage": "https://github.com/iarna/gauge",
+ "dependencies": {
+ "aproba": "^1.0.3",
+ "console-control-strings": "^1.0.0",
+ "has-unicode": "^2.0.0",
+ "object-assign": "^4.1.0",
+ "signal-exit": "^3.0.0",
+ "string-width": "^1.0.1",
+ "strip-ansi": "^3.0.1",
+ "wide-align": "^1.1.0"
+ },
+ "devDependencies": {
+ "readable-stream": "^2.0.6",
+ "require-inject": "^1.4.0",
+ "standard": "^7.1.2",
+ "tap": "^5.7.2",
+ "through2": "^2.0.0"
+ },
+ "files": [
+ "base-theme.js",
+ "CHANGELOG.md",
+ "error.js",
+ "has-color.js",
+ "index.js",
+ "LICENSE",
+ "package.json",
+ "plumbing.js",
+ "process.js",
+ "progress-bar.js",
+ "README.md",
+ "render-template.js",
+ "set-immediate.js",
+ "set-interval.js",
+ "spin.js",
+ "template-item.js",
+ "theme-set.js",
+ "themes.js",
+ "wide-truncate.js"
+ ]
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/plumbing.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/plumbing.js
new file mode 100644
index 0000000000..1afb4af6d5
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/plumbing.js
@@ -0,0 +1,48 @@
+'use strict'
+var consoleControl = require('console-control-strings')
+var renderTemplate = require('./render-template.js')
+var validate = require('aproba')
+
+var Plumbing = module.exports = function (theme, template, width) {
+ if (!width) width = 80
+ validate('OAN', [theme, template, width])
+ this.showing = false
+ this.theme = theme
+ this.width = width
+ this.template = template
+}
+Plumbing.prototype = {}
+
+Plumbing.prototype.setTheme = function (theme) {
+ validate('O', [theme])
+ this.theme = theme
+}
+
+Plumbing.prototype.setTemplate = function (template) {
+ validate('A', [template])
+ this.template = template
+}
+
+Plumbing.prototype.setWidth = function (width) {
+ validate('N', [width])
+ this.width = width
+}
+
+Plumbing.prototype.hide = function () {
+ return consoleControl.gotoSOL() + consoleControl.eraseLine()
+}
+
+Plumbing.prototype.hideCursor = consoleControl.hideCursor
+
+Plumbing.prototype.showCursor = consoleControl.showCursor
+
+Plumbing.prototype.show = function (status) {
+ var values = Object.create(this.theme)
+ for (var key in status) {
+ values[key] = status[key]
+ }
+
+ return renderTemplate(this.width, this.template, values).trim() +
+ consoleControl.color('reset') +
+ consoleControl.eraseLine() + consoleControl.gotoSOL()
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/process.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/process.js
new file mode 100644
index 0000000000..05e85694d7
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/process.js
@@ -0,0 +1,3 @@
+'use strict'
+// this exists so we can replace it during testing
+module.exports = process
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/progress-bar.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/progress-bar.js
new file mode 100644
index 0000000000..7f8dd68be2
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/progress-bar.js
@@ -0,0 +1,35 @@
+'use strict'
+var validate = require('aproba')
+var renderTemplate = require('./render-template.js')
+var wideTruncate = require('./wide-truncate')
+var stringWidth = require('string-width')
+
+module.exports = function (theme, width, completed) {
+ validate('ONN', [theme, width, completed])
+ if (completed < 0) completed = 0
+ if (completed > 1) completed = 1
+ if (width <= 0) return ''
+ var sofar = Math.round(width * completed)
+ var rest = width - sofar
+ var template = [
+ {type: 'complete', value: repeat(theme.complete, sofar), length: sofar},
+ {type: 'remaining', value: repeat(theme.remaining, rest), length: rest}
+ ]
+ return renderTemplate(width, template, theme)
+}
+
+// lodash's way of repeating
+function repeat (string, width) {
+ var result = ''
+ var n = width
+ do {
+ if (n % 2) {
+ result += string
+ }
+ n = Math.floor(n / 2)
+ /*eslint no-self-assign: 0*/
+ string += string
+ } while (n && stringWidth(result) < width)
+
+ return wideTruncate(result, width)
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/render-template.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/render-template.js
new file mode 100644
index 0000000000..3261bfbe6f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/render-template.js
@@ -0,0 +1,181 @@
+'use strict'
+var align = require('wide-align')
+var validate = require('aproba')
+var objectAssign = require('object-assign')
+var wideTruncate = require('./wide-truncate')
+var error = require('./error')
+var TemplateItem = require('./template-item')
+
+function renderValueWithValues (values) {
+ return function (item) {
+ return renderValue(item, values)
+ }
+}
+
+var renderTemplate = module.exports = function (width, template, values) {
+ var items = prepareItems(width, template, values)
+ var rendered = items.map(renderValueWithValues(values)).join('')
+ return align.left(wideTruncate(rendered, width), width)
+}
+
+function preType (item) {
+ var cappedTypeName = item.type[0].toUpperCase() + item.type.slice(1)
+ return 'pre' + cappedTypeName
+}
+
+function postType (item) {
+ var cappedTypeName = item.type[0].toUpperCase() + item.type.slice(1)
+ return 'post' + cappedTypeName
+}
+
+function hasPreOrPost (item, values) {
+ if (!item.type) return
+ return values[preType(item)] || values[postType(item)]
+}
+
+function generatePreAndPost (baseItem, parentValues) {
+ var item = objectAssign({}, baseItem)
+ var values = Object.create(parentValues)
+ var template = []
+ var pre = preType(item)
+ var post = postType(item)
+ if (values[pre]) {
+ template.push({value: values[pre]})
+ values[pre] = null
+ }
+ item.minLength = null
+ item.length = null
+ item.maxLength = null
+ template.push(item)
+ values[item.type] = values[item.type]
+ if (values[post]) {
+ template.push({value: values[post]})
+ values[post] = null
+ }
+ return function ($1, $2, length) {
+ return renderTemplate(length, template, values)
+ }
+}
+
+function prepareItems (width, template, values) {
+ function cloneAndObjectify (item, index, arr) {
+ var cloned = new TemplateItem(item, width)
+ var type = cloned.type
+ if (cloned.value == null) {
+ if (!(type in values)) {
+ if (cloned.default == null) {
+ throw new error.MissingTemplateValue(cloned, values)
+ } else {
+ cloned.value = cloned.default
+ }
+ } else {
+ cloned.value = values[type]
+ }
+ }
+ if (cloned.value == null || cloned.value === '') return null
+ cloned.index = index
+ cloned.first = index === 0
+ cloned.last = index === arr.length - 1
+ if (hasPreOrPost(cloned, values)) cloned.value = generatePreAndPost(cloned, values)
+ return cloned
+ }
+
+ var output = template.map(cloneAndObjectify).filter(function (item) { return item != null })
+
+ var outputLength = 0
+ var remainingSpace = width
+ var variableCount = output.length
+
+ function consumeSpace (length) {
+ if (length > remainingSpace) length = remainingSpace
+ outputLength += length
+ remainingSpace -= length
+ }
+
+ function finishSizing (item, length) {
+ if (item.finished) throw new error.Internal('Tried to finish template item that was already finished')
+ if (length === Infinity) throw new error.Internal('Length of template item cannot be infinity')
+ if (length != null) item.length = length
+ item.minLength = null
+ item.maxLength = null
+ --variableCount
+ item.finished = true
+ if (item.length == null) item.length = item.getBaseLength()
+ if (item.length == null) throw new error.Internal('Finished template items must have a length')
+ consumeSpace(item.getLength())
+ }
+
+ output.forEach(function (item) {
+ if (!item.kerning) return
+ var prevPadRight = item.first ? 0 : output[item.index - 1].padRight
+ if (!item.first && prevPadRight < item.kerning) item.padLeft = item.kerning - prevPadRight
+ if (!item.last) item.padRight = item.kerning
+ })
+
+ // Finish any that have a fixed (literal or intuited) length
+ output.forEach(function (item) {
+ if (item.getBaseLength() == null) return
+ finishSizing(item)
+ })
+
+ var resized = 0
+ var resizing
+ var hunkSize
+ do {
+ resizing = false
+ hunkSize = Math.round(remainingSpace / variableCount)
+ output.forEach(function (item) {
+ if (item.finished) return
+ if (!item.maxLength) return
+ if (item.getMaxLength() < hunkSize) {
+ finishSizing(item, item.maxLength)
+ resizing = true
+ }
+ })
+ } while (resizing && resized++ < output.length)
+ if (resizing) throw new error.Internal('Resize loop iterated too many times while determining maxLength')
+
+ resized = 0
+ do {
+ resizing = false
+ hunkSize = Math.round(remainingSpace / variableCount)
+ output.forEach(function (item) {
+ if (item.finished) return
+ if (!item.minLength) return
+ if (item.getMinLength() >= hunkSize) {
+ finishSizing(item, item.minLength)
+ resizing = true
+ }
+ })
+ } while (resizing && resized++ < output.length)
+ if (resizing) throw new error.Internal('Resize loop iterated too many times while determining minLength')
+
+ hunkSize = Math.round(remainingSpace / variableCount)
+ output.forEach(function (item) {
+ if (item.finished) return
+ finishSizing(item, hunkSize)
+ })
+
+ return output
+}
+
+function renderFunction (item, values, length) {
+ validate('OON', arguments)
+ if (item.type) {
+ return item.value(values, values[item.type + 'Theme'] || {}, length)
+ } else {
+ return item.value(values, {}, length)
+ }
+}
+
+function renderValue (item, values) {
+ var length = item.getBaseLength()
+ var value = typeof item.value === 'function' ? renderFunction(item, values, length) : item.value
+ if (value == null || value === '') return ''
+ var alignWith = align[item.align] || align.left
+ var leftPadding = item.padLeft ? align.left('', item.padLeft) : ''
+ var rightPadding = item.padRight ? align.right('', item.padRight) : ''
+ var truncated = wideTruncate(String(value), length)
+ var aligned = alignWith(truncated, length)
+ return leftPadding + aligned + rightPadding
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/set-immediate.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/set-immediate.js
new file mode 100644
index 0000000000..6650a485c4
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/set-immediate.js
@@ -0,0 +1,7 @@
+'use strict'
+var process = require('./process')
+try {
+ module.exports = setImmediate
+} catch (ex) {
+ module.exports = process.nextTick
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/set-interval.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/set-interval.js
new file mode 100644
index 0000000000..576198793c
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/set-interval.js
@@ -0,0 +1,3 @@
+'use strict'
+// this exists so we can replace it during testing
+module.exports = setInterval
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/spin.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/spin.js
new file mode 100644
index 0000000000..34142ee31a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/spin.js
@@ -0,0 +1,5 @@
+'use strict'
+
+module.exports = function spin (spinstr, spun) {
+ return spinstr[spun % spinstr.length]
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/template-item.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/template-item.js
new file mode 100644
index 0000000000..4f02fefaa2
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/template-item.js
@@ -0,0 +1,72 @@
+'use strict'
+var stringWidth = require('string-width')
+
+module.exports = TemplateItem
+
+function isPercent (num) {
+ if (typeof num !== 'string') return false
+ return num.slice(-1) === '%'
+}
+
+function percent (num) {
+ return Number(num.slice(0, -1)) / 100
+}
+
+function TemplateItem (values, outputLength) {
+ this.overallOutputLength = outputLength
+ this.finished = false
+ this.type = null
+ this.value = null
+ this.length = null
+ this.maxLength = null
+ this.minLength = null
+ this.kerning = null
+ this.align = 'left'
+ this.padLeft = 0
+ this.padRight = 0
+ this.index = null
+ this.first = null
+ this.last = null
+ if (typeof values === 'string') {
+ this.value = values
+ } else {
+ for (var prop in values) this[prop] = values[prop]
+ }
+ // Realize percents
+ if (isPercent(this.length)) {
+ this.length = Math.round(this.overallOutputLength * percent(this.length))
+ }
+ if (isPercent(this.minLength)) {
+ this.minLength = Math.round(this.overallOutputLength * percent(this.minLength))
+ }
+ if (isPercent(this.maxLength)) {
+ this.maxLength = Math.round(this.overallOutputLength * percent(this.maxLength))
+ }
+ return this
+}
+
+TemplateItem.prototype = {}
+
+TemplateItem.prototype.getBaseLength = function () {
+ var length = this.length
+ if (length == null && typeof this.value === 'string' && this.maxLength == null && this.minLength == null) {
+ length = stringWidth(this.value)
+ }
+ return length
+}
+
+TemplateItem.prototype.getLength = function () {
+ var length = this.getBaseLength()
+ if (length == null) return null
+ return length + this.padLeft + this.padRight
+}
+
+TemplateItem.prototype.getMaxLength = function () {
+ if (this.maxLength == null) return null
+ return this.maxLength + this.padLeft + this.padRight
+}
+
+TemplateItem.prototype.getMinLength = function () {
+ if (this.minLength == null) return null
+ return this.minLength + this.padLeft + this.padRight
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/theme-set.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/theme-set.js
new file mode 100644
index 0000000000..c022d61cf1
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/theme-set.js
@@ -0,0 +1,114 @@
+'use strict'
+var objectAssign = require('object-assign')
+
+module.exports = function () {
+ return ThemeSetProto.newThemeSet()
+}
+
+var ThemeSetProto = {}
+
+ThemeSetProto.baseTheme = require('./base-theme.js')
+
+ThemeSetProto.newTheme = function (parent, theme) {
+ if (!theme) {
+ theme = parent
+ parent = this.baseTheme
+ }
+ return objectAssign({}, parent, theme)
+}
+
+ThemeSetProto.getThemeNames = function () {
+ return Object.keys(this.themes)
+}
+
+ThemeSetProto.addTheme = function (name, parent, theme) {
+ this.themes[name] = this.newTheme(parent, theme)
+}
+
+ThemeSetProto.addToAllThemes = function (theme) {
+ var themes = this.themes
+ Object.keys(themes).forEach(function (name) {
+ objectAssign(themes[name], theme)
+ })
+ objectAssign(this.baseTheme, theme)
+}
+
+ThemeSetProto.getTheme = function (name) {
+ if (!this.themes[name]) throw this.newMissingThemeError(name)
+ return this.themes[name]
+}
+
+ThemeSetProto.setDefault = function (opts, name) {
+ if (name == null) {
+ name = opts
+ opts = {}
+ }
+ var platform = opts.platform == null ? 'fallback' : opts.platform
+ var hasUnicode = !!opts.hasUnicode
+ var hasColor = !!opts.hasColor
+ if (!this.defaults[platform]) this.defaults[platform] = {true: {}, false: {}}
+ this.defaults[platform][hasUnicode][hasColor] = name
+}
+
+ThemeSetProto.getDefault = function (opts) {
+ if (!opts) opts = {}
+ var platformName = opts.platform || process.platform
+ var platform = this.defaults[platformName] || this.defaults.fallback
+ var hasUnicode = !!opts.hasUnicode
+ var hasColor = !!opts.hasColor
+ if (!platform) throw this.newMissingDefaultThemeError(platformName, hasUnicode, hasColor)
+ if (!platform[hasUnicode][hasColor]) {
+ if (hasUnicode && hasColor && platform[!hasUnicode][hasColor]) {
+ hasUnicode = false
+ } else if (hasUnicode && hasColor && platform[hasUnicode][!hasColor]) {
+ hasColor = false
+ } else if (hasUnicode && hasColor && platform[!hasUnicode][!hasColor]) {
+ hasUnicode = false
+ hasColor = false
+ } else if (hasUnicode && !hasColor && platform[!hasUnicode][hasColor]) {
+ hasUnicode = false
+ } else if (!hasUnicode && hasColor && platform[hasUnicode][!hasColor]) {
+ hasColor = false
+ } else if (platform === this.defaults.fallback) {
+ throw this.newMissingDefaultThemeError(platformName, hasUnicode, hasColor)
+ }
+ }
+ if (platform[hasUnicode][hasColor]) {
+ return this.getTheme(platform[hasUnicode][hasColor])
+ } else {
+ return this.getDefault(objectAssign({}, opts, {platform: 'fallback'}))
+ }
+}
+
+ThemeSetProto.newMissingThemeError = function newMissingThemeError (name) {
+ var err = new Error('Could not find a gauge theme named "' + name + '"')
+ Error.captureStackTrace.call(err, newMissingThemeError)
+ err.theme = name
+ err.code = 'EMISSINGTHEME'
+ return err
+}
+
+ThemeSetProto.newMissingDefaultThemeError = function newMissingDefaultThemeError (platformName, hasUnicode, hasColor) {
+ var err = new Error(
+ 'Could not find a gauge theme for your platform/unicode/color use combo:\n' +
+ ' platform = ' + platformName + '\n' +
+ ' hasUnicode = ' + hasUnicode + '\n' +
+ ' hasColor = ' + hasColor)
+ Error.captureStackTrace.call(err, newMissingDefaultThemeError)
+ err.platform = platformName
+ err.hasUnicode = hasUnicode
+ err.hasColor = hasColor
+ err.code = 'EMISSINGTHEME'
+ return err
+}
+
+ThemeSetProto.newThemeSet = function () {
+ var themeset = function (opts) {
+ return themeset.getDefault(opts)
+ }
+ return objectAssign(themeset, ThemeSetProto, {
+ themes: objectAssign({}, this.themes),
+ baseTheme: objectAssign({}, this.baseTheme),
+ defaults: JSON.parse(JSON.stringify(this.defaults || {}))
+ })
+}
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/themes.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/themes.js
new file mode 100644
index 0000000000..eb5a4f5b5e
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/themes.js
@@ -0,0 +1,54 @@
+'use strict'
+var consoleControl = require('console-control-strings')
+var ThemeSet = require('./theme-set.js')
+
+var themes = module.exports = new ThemeSet()
+
+themes.addTheme('ASCII', {
+ preProgressbar: '[',
+ postProgressbar: ']',
+ progressbarTheme: {
+ complete: '#',
+ remaining: '.'
+ },
+ activityIndicatorTheme: '-\\|/',
+ preSubsection: '>'
+})
+
+themes.addTheme('colorASCII', themes.getTheme('ASCII'), {
+ progressbarTheme: {
+ preComplete: consoleControl.color('inverse'),
+ complete: ' ',
+ postComplete: consoleControl.color('stopInverse'),
+ preRemaining: consoleControl.color('brightBlack'),
+ remaining: '.',
+ postRemaining: consoleControl.color('reset')
+ }
+})
+
+themes.addTheme('brailleSpinner', {
+ preProgressbar: '⸨',
+ postProgressbar: '⸩',
+ progressbarTheme: {
+ complete: '░',
+ remaining: '⠂'
+ },
+ activityIndicatorTheme: '⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏',
+ preSubsection: '>'
+})
+
+themes.addTheme('colorBrailleSpinner', themes.getTheme('brailleSpinner'), {
+ progressbarTheme: {
+ preComplete: consoleControl.color('inverse'),
+ complete: ' ',
+ postComplete: consoleControl.color('stopInverse'),
+ preRemaining: consoleControl.color('brightBlack'),
+ remaining: '░',
+ postRemaining: consoleControl.color('reset')
+ }
+})
+
+themes.setDefault({}, 'ASCII')
+themes.setDefault({hasColor: true}, 'colorASCII')
+themes.setDefault({platform: 'darwin', hasUnicode: true}, 'brailleSpinner')
+themes.setDefault({platform: 'darwin', hasUnicode: true, hasColor: true}, 'colorBrailleSpinner')
diff --git a/deps/npm/node_modules/node-gyp/node_modules/gauge/wide-truncate.js b/deps/npm/node_modules/node-gyp/node_modules/gauge/wide-truncate.js
new file mode 100644
index 0000000000..c531bc491f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/gauge/wide-truncate.js
@@ -0,0 +1,25 @@
+'use strict'
+var stringWidth = require('string-width')
+var stripAnsi = require('strip-ansi')
+
+module.exports = wideTruncate
+
+function wideTruncate (str, target) {
+ if (stringWidth(str) === 0) return str
+ if (target <= 0) return ''
+ if (stringWidth(str) <= target) return str
+
+ // We compute the number of bytes of ansi sequences here and add
+ // that to our initial truncation to ensure that we don't slice one
+ // that we want to keep in half.
+ var noAnsi = stripAnsi(str)
+ var ansiSize = str.length + noAnsi.length
+ var truncated = str.slice(0, target + ansiSize)
+
+ // we have to shrink the result to account for our ansi sequence buffer
+ // (if an ansi sequence was truncated) and double width characters.
+ while (stringWidth(truncated) > target) {
+ truncated = truncated.slice(0, -1)
+ }
+ return truncated
+}
diff --git a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/index.js b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/index.js
index a7d3e3855f..a7d3e3855f 100644
--- a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/index.js
diff --git a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/license b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/license
index 654d0bfe94..654d0bfe94 100644
--- a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/license
+++ b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/license
diff --git a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/package.json b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/package.json
index b678d40de7..b678d40de7 100644
--- a/deps/npm/node_modules/gauge/node_modules/is-fullwidth-code-point/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/is-fullwidth-code-point/package.json
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE b/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE
new file mode 100644
index 0000000000..19129e315f
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/LICENSE
@@ -0,0 +1,15 @@
+The ISC License
+
+Copyright (c) Isaac Z. Schlueter and Contributors
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
+IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js b/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js
new file mode 100644
index 0000000000..341f3313ab
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/log.js
@@ -0,0 +1,309 @@
+'use strict'
+var Progress = require('are-we-there-yet')
+var Gauge = require('gauge')
+var EE = require('events').EventEmitter
+var log = exports = module.exports = new EE()
+var util = require('util')
+
+var setBlocking = require('set-blocking')
+var consoleControl = require('console-control-strings')
+
+setBlocking(true)
+var stream = process.stderr
+Object.defineProperty(log, 'stream', {
+ set: function (newStream) {
+ stream = newStream
+ if (this.gauge) this.gauge.setWriteTo(stream, stream)
+ },
+ get: function () {
+ return stream
+ }
+})
+
+// by default, decide based on tty-ness.
+var colorEnabled
+log.useColor = function () {
+ return colorEnabled != null ? colorEnabled : stream.isTTY
+}
+
+log.enableColor = function () {
+ colorEnabled = true
+ this.gauge.setTheme({hasColor: colorEnabled, hasUnicode: unicodeEnabled})
+}
+log.disableColor = function () {
+ colorEnabled = false
+ this.gauge.setTheme({hasColor: colorEnabled, hasUnicode: unicodeEnabled})
+}
+
+// default level
+log.level = 'info'
+
+log.gauge = new Gauge(stream, {
+ enabled: false, // no progress bars unless asked
+ theme: {hasColor: log.useColor()},
+ template: [
+ {type: 'progressbar', length: 20},
+ {type: 'activityIndicator', kerning: 1, length: 1},
+ {type: 'section', default: ''},
+ ':',
+ {type: 'logline', kerning: 1, default: ''}
+ ]
+})
+
+log.tracker = new Progress.TrackerGroup()
+
+// we track this separately as we may need to temporarily disable the
+// display of the status bar for our own loggy purposes.
+log.progressEnabled = log.gauge.isEnabled()
+
+var unicodeEnabled
+
+log.enableUnicode = function () {
+ unicodeEnabled = true
+ this.gauge.setTheme({hasColor: this.useColor(), hasUnicode: unicodeEnabled})
+}
+
+log.disableUnicode = function () {
+ unicodeEnabled = false
+ this.gauge.setTheme({hasColor: this.useColor(), hasUnicode: unicodeEnabled})
+}
+
+log.setGaugeThemeset = function (themes) {
+ this.gauge.setThemeset(themes)
+}
+
+log.setGaugeTemplate = function (template) {
+ this.gauge.setTemplate(template)
+}
+
+log.enableProgress = function () {
+ if (this.progressEnabled) return
+ this.progressEnabled = true
+ this.tracker.on('change', this.showProgress)
+ if (this._pause) return
+ this.gauge.enable()
+}
+
+log.disableProgress = function () {
+ if (!this.progressEnabled) return
+ this.progressEnabled = false
+ this.tracker.removeListener('change', this.showProgress)
+ this.gauge.disable()
+}
+
+var trackerConstructors = ['newGroup', 'newItem', 'newStream']
+
+var mixinLog = function (tracker) {
+ // mixin the public methods from log into the tracker
+ // (except: conflicts and one's we handle specially)
+ Object.keys(log).forEach(function (P) {
+ if (P[0] === '_') return
+ if (trackerConstructors.filter(function (C) { return C === P }).length) return
+ if (tracker[P]) return
+ if (typeof log[P] !== 'function') return
+ var func = log[P]
+ tracker[P] = function () {
+ return func.apply(log, arguments)
+ }
+ })
+ // if the new tracker is a group, make sure any subtrackers get
+ // mixed in too
+ if (tracker instanceof Progress.TrackerGroup) {
+ trackerConstructors.forEach(function (C) {
+ var func = tracker[C]
+ tracker[C] = function () { return mixinLog(func.apply(tracker, arguments)) }
+ })
+ }
+ return tracker
+}
+
+// Add tracker constructors to the top level log object
+trackerConstructors.forEach(function (C) {
+ log[C] = function () { return mixinLog(this.tracker[C].apply(this.tracker, arguments)) }
+})
+
+log.clearProgress = function (cb) {
+ if (!this.progressEnabled) return cb && process.nextTick(cb)
+ this.gauge.hide(cb)
+}
+
+log.showProgress = function (name, completed) {
+ if (!this.progressEnabled) return
+ var values = {}
+ if (name) values.section = name
+ var last = log.record[log.record.length - 1]
+ if (last) {
+ values.subsection = last.prefix
+ var disp = log.disp[last.level] || last.level
+ var logline = this._format(disp, log.style[last.level])
+ if (last.prefix) logline += ' ' + this._format(last.prefix, this.prefixStyle)
+ logline += ' ' + last.message.split(/\r?\n/)[0]
+ values.logline = logline
+ }
+ values.completed = completed || this.tracker.completed()
+ this.gauge.show(values)
+}.bind(log) // bind for use in tracker's on-change listener
+
+// temporarily stop emitting, but don't drop
+log.pause = function () {
+ this._paused = true
+ if (this.progressEnabled) this.gauge.disable()
+}
+
+log.resume = function () {
+ if (!this._paused) return
+ this._paused = false
+
+ var b = this._buffer
+ this._buffer = []
+ b.forEach(function (m) {
+ this.emitLog(m)
+ }, this)
+ if (this.progressEnabled) this.gauge.enable()
+}
+
+log._buffer = []
+
+var id = 0
+log.record = []
+log.maxRecordSize = 10000
+log.log = function (lvl, prefix, message) {
+ var l = this.levels[lvl]
+ if (l === undefined) {
+ return this.emit('error', new Error(util.format(
+ 'Undefined log level: %j', lvl)))
+ }
+
+ var a = new Array(arguments.length - 2)
+ var stack = null
+ for (var i = 2; i < arguments.length; i++) {
+ var arg = a[i - 2] = arguments[i]
+
+ // resolve stack traces to a plain string.
+ if (typeof arg === 'object' && arg &&
+ (arg instanceof Error) && arg.stack) {
+
+ Object.defineProperty(arg, 'stack', {
+ value: stack = arg.stack + '',
+ enumerable: true,
+ writable: true
+ })
+ }
+ }
+ if (stack) a.unshift(stack + '\n')
+ message = util.format.apply(util, a)
+
+ var m = { id: id++,
+ level: lvl,
+ prefix: String(prefix || ''),
+ message: message,
+ messageRaw: a }
+
+ this.emit('log', m)
+ this.emit('log.' + lvl, m)
+ if (m.prefix) this.emit(m.prefix, m)
+
+ this.record.push(m)
+ var mrs = this.maxRecordSize
+ var n = this.record.length - mrs
+ if (n > mrs / 10) {
+ var newSize = Math.floor(mrs * 0.9)
+ this.record = this.record.slice(-1 * newSize)
+ }
+
+ this.emitLog(m)
+}.bind(log)
+
+log.emitLog = function (m) {
+ if (this._paused) {
+ this._buffer.push(m)
+ return
+ }
+ if (this.progressEnabled) this.gauge.pulse(m.prefix)
+ var l = this.levels[m.level]
+ if (l === undefined) return
+ if (l < this.levels[this.level]) return
+ if (l > 0 && !isFinite(l)) return
+
+ // If 'disp' is null or undefined, use the lvl as a default
+ // Allows: '', 0 as valid disp
+ var disp = log.disp[m.level] != null ? log.disp[m.level] : m.level
+ this.clearProgress()
+ m.message.split(/\r?\n/).forEach(function (line) {
+ if (this.heading) {
+ this.write(this.heading, this.headingStyle)
+ this.write(' ')
+ }
+ this.write(disp, log.style[m.level])
+ var p = m.prefix || ''
+ if (p) this.write(' ')
+ this.write(p, this.prefixStyle)
+ this.write(' ' + line + '\n')
+ }, this)
+ this.showProgress()
+}
+
+log._format = function (msg, style) {
+ if (!stream) return
+
+ var output = ''
+ if (this.useColor()) {
+ style = style || {}
+ var settings = []
+ if (style.fg) settings.push(style.fg)
+ if (style.bg) settings.push('bg' + style.bg[0].toUpperCase() + style.bg.slice(1))
+ if (style.bold) settings.push('bold')
+ if (style.underline) settings.push('underline')
+ if (style.inverse) settings.push('inverse')
+ if (settings.length) output += consoleControl.color(settings)
+ if (style.beep) output += consoleControl.beep()
+ }
+ output += msg
+ if (this.useColor()) {
+ output += consoleControl.color('reset')
+ }
+ return output
+}
+
+log.write = function (msg, style) {
+ if (!stream) return
+
+ stream.write(this._format(msg, style))
+}
+
+log.addLevel = function (lvl, n, style, disp) {
+ // If 'disp' is null or undefined, use the lvl as a default
+ if (disp == null) disp = lvl
+ this.levels[lvl] = n
+ this.style[lvl] = style
+ if (!this[lvl]) {
+ this[lvl] = function () {
+ var a = new Array(arguments.length + 1)
+ a[0] = lvl
+ for (var i = 0; i < arguments.length; i++) {
+ a[i + 1] = arguments[i]
+ }
+ return this.log.apply(this, a)
+ }.bind(this)
+ }
+ this.disp[lvl] = disp
+}
+
+log.prefixStyle = { fg: 'magenta' }
+log.headingStyle = { fg: 'white', bg: 'black' }
+
+log.style = {}
+log.levels = {}
+log.disp = {}
+log.addLevel('silly', -Infinity, { inverse: true }, 'sill')
+log.addLevel('verbose', 1000, { fg: 'blue', bg: 'black' }, 'verb')
+log.addLevel('info', 2000, { fg: 'green' })
+log.addLevel('timing', 2500, { fg: 'green', bg: 'black' })
+log.addLevel('http', 3000, { fg: 'green', bg: 'black' })
+log.addLevel('notice', 3500, { fg: 'blue', bg: 'black' })
+log.addLevel('warn', 4000, { fg: 'black', bg: 'yellow' }, 'WARN')
+log.addLevel('error', 5000, { fg: 'red', bg: 'black' }, 'ERR!')
+log.addLevel('silent', Infinity)
+
+// allow 'error' prefix
+log.on('error', function () {})
diff --git a/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json b/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json
new file mode 100644
index 0000000000..7220f8e72a
--- /dev/null
+++ b/deps/npm/node_modules/node-gyp/node_modules/npmlog/package.json
@@ -0,0 +1,28 @@
+{
+ "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
+ "name": "npmlog",
+ "description": "logger for npm",
+ "version": "4.1.2",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/npm/npmlog.git"
+ },
+ "main": "log.js",
+ "files": [
+ "log.js"
+ ],
+ "scripts": {
+ "test": "standard && tap test/*.js"
+ },
+ "dependencies": {
+ "are-we-there-yet": "~1.1.2",
+ "console-control-strings": "~1.1.0",
+ "gauge": "~2.7.3",
+ "set-blocking": "~2.0.0"
+ },
+ "devDependencies": {
+ "standard": "~7.1.2",
+ "tap": "~5.7.3"
+ },
+ "license": "ISC"
+}
diff --git a/deps/npm/node_modules/gauge/node_modules/string-width/index.js b/deps/npm/node_modules/node-gyp/node_modules/string-width/index.js
index b9bec62440..b9bec62440 100644
--- a/deps/npm/node_modules/gauge/node_modules/string-width/index.js
+++ b/deps/npm/node_modules/node-gyp/node_modules/string-width/index.js
diff --git a/deps/npm/node_modules/gauge/node_modules/string-width/license b/deps/npm/node_modules/node-gyp/node_modules/string-width/license
index 654d0bfe94..654d0bfe94 100644
--- a/deps/npm/node_modules/gauge/node_modules/string-width/license
+++ b/deps/npm/node_modules/node-gyp/node_modules/string-width/license
diff --git a/deps/npm/node_modules/gauge/node_modules/string-width/package.json b/deps/npm/node_modules/node-gyp/node_modules/string-width/package.json
index 5ba436166e..5ba436166e 100644
--- a/deps/npm/node_modules/gauge/node_modules/string-width/package.json
+++ b/deps/npm/node_modules/node-gyp/node_modules/string-width/package.json
diff --git a/deps/npm/node_modules/normalize-package-data/LICENSE b/deps/npm/node_modules/normalize-package-data/LICENSE
index 6ed662cd5d..19d1364a8a 100644
--- a/deps/npm/node_modules/normalize-package-data/LICENSE
+++ b/deps/npm/node_modules/normalize-package-data/LICENSE
@@ -6,25 +6,10 @@ All rights reserved.
The BSD License
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
+1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
+2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
-CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
-BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
-OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
-IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/deps/npm/node_modules/normalize-package-data/lib/extract_description.js b/deps/npm/node_modules/normalize-package-data/lib/extract_description.js
index 83f10aa0a7..bf9896812e 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/extract_description.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/extract_description.js
@@ -2,13 +2,21 @@ module.exports = extractDescription
// Extracts description from contents of a readme file in markdown format
function extractDescription (d) {
- if (!d) return;
- if (d === "ERROR: No README data found!") return;
+ if (!d) {
+ return
+ }
+ if (d === 'ERROR: No README data found!') {
+ return
+ }
// the first block of text before the first heading
// that isn't the first line heading
d = d.trim().split('\n')
- for (var s = 0; d[s] && d[s].trim().match(/^(#|$)/); s ++);
+ for (var s = 0; d[s] && d[s].trim().match(/^(#|$)/); s++) {
+ ;
+ }
var l = d.length
- for (var e = s + 1; e < l && d[e].trim(); e ++);
+ for (var e = s + 1; e < l && d[e].trim(); e++) {
+ ;
+ }
return d.slice(s, e).join(' ').trim()
}
diff --git a/deps/npm/node_modules/normalize-package-data/lib/fixer.js b/deps/npm/node_modules/normalize-package-data/lib/fixer.js
index 27682e9611..97c26b26b4 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/fixer.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/fixer.js
@@ -1,87 +1,94 @@
-var semver = require("semver")
-var validateLicense = require('validate-npm-package-license');
-var hostedGitInfo = require("hosted-git-info")
-var isBuiltinModule = require("resolve").isCore
-var depTypes = ["dependencies","devDependencies","optionalDependencies"]
-var extractDescription = require("./extract_description")
-var url = require("url")
-var typos = require("./typos.json")
-
-var fixer = module.exports = {
+var isValidSemver = require('semver/functions/valid')
+var cleanSemver = require('semver/functions/clean')
+var validateLicense = require('validate-npm-package-license')
+var hostedGitInfo = require('hosted-git-info')
+var isBuiltinModule = require('is-core-module')
+var depTypes = ['dependencies', 'devDependencies', 'optionalDependencies']
+var extractDescription = require('./extract_description')
+var url = require('url')
+var typos = require('./typos.json')
+
+module.exports = {
// default warning function
- warn: function() {},
+ warn: function () {},
- fixRepositoryField: function(data) {
+ fixRepositoryField: function (data) {
if (data.repositories) {
- this.warn("repositories");
+ this.warn('repositories')
data.repository = data.repositories[0]
}
- if (!data.repository) return this.warn("missingRepository")
- if (typeof data.repository === "string") {
+ if (!data.repository) {
+ return this.warn('missingRepository')
+ }
+ if (typeof data.repository === 'string') {
data.repository = {
- type: "git",
- url: data.repository
+ type: 'git',
+ url: data.repository,
}
}
- var r = data.repository.url || ""
+ var r = data.repository.url || ''
if (r) {
var hosted = hostedGitInfo.fromUrl(r)
if (hosted) {
r = data.repository.url
- = hosted.getDefaultRepresentation() == "shortcut" ? hosted.https() : hosted.toString()
+ = hosted.getDefaultRepresentation() === 'shortcut' ? hosted.https() : hosted.toString()
}
}
- if (r.match(/github.com\/[^\/]+\/[^\/]+\.git\.git$/)) {
- this.warn("brokenGitUrl", r)
+ if (r.match(/github.com\/[^/]+\/[^/]+\.git\.git$/)) {
+ this.warn('brokenGitUrl', r)
}
- }
+ },
-, fixTypos: function(data) {
+ fixTypos: function (data) {
Object.keys(typos.topLevel).forEach(function (d) {
- if (data.hasOwnProperty(d)) {
- this.warn("typo", d, typos.topLevel[d])
+ if (Object.prototype.hasOwnProperty.call(data, d)) {
+ this.warn('typo', d, typos.topLevel[d])
}
}, this)
- }
+ },
-, fixScriptsField: function(data) {
- if (!data.scripts) return
- if (typeof data.scripts !== "object") {
- this.warn("nonObjectScripts")
+ fixScriptsField: function (data) {
+ if (!data.scripts) {
+ return
+ }
+ if (typeof data.scripts !== 'object') {
+ this.warn('nonObjectScripts')
delete data.scripts
return
}
Object.keys(data.scripts).forEach(function (k) {
- if (typeof data.scripts[k] !== "string") {
- this.warn("nonStringScript")
+ if (typeof data.scripts[k] !== 'string') {
+ this.warn('nonStringScript')
delete data.scripts[k]
} else if (typos.script[k] && !data.scripts[typos.script[k]]) {
- this.warn("typo", k, typos.script[k], "scripts")
+ this.warn('typo', k, typos.script[k], 'scripts')
}
}, this)
- }
+ },
-, fixFilesField: function(data) {
+ fixFilesField: function (data) {
var files = data.files
if (files && !Array.isArray(files)) {
- this.warn("nonArrayFiles")
+ this.warn('nonArrayFiles')
delete data.files
} else if (data.files) {
- data.files = data.files.filter(function(file) {
- if (!file || typeof file !== "string") {
- this.warn("invalidFilename", file)
+ data.files = data.files.filter(function (file) {
+ if (!file || typeof file !== 'string') {
+ this.warn('invalidFilename', file)
return false
} else {
return true
}
}, this)
}
- }
+ },
-, fixBinField: function(data) {
- if (!data.bin) return;
- if (typeof data.bin === "string") {
+ fixBinField: function (data) {
+ if (!data.bin) {
+ return
+ }
+ if (typeof data.bin === 'string') {
var b = {}
var match
if (match = data.name.match(/^@[^/]+[/](.*)$/)) {
@@ -91,286 +98,327 @@ var fixer = module.exports = {
}
data.bin = b
}
- }
+ },
-, fixManField: function(data) {
- if (!data.man) return;
- if (typeof data.man === "string") {
- data.man = [ data.man ]
+ fixManField: function (data) {
+ if (!data.man) {
+ return
}
- }
-, fixBundleDependenciesField: function(data) {
- var bdd = "bundledDependencies"
- var bd = "bundleDependencies"
+ if (typeof data.man === 'string') {
+ data.man = [data.man]
+ }
+ },
+ fixBundleDependenciesField: function (data) {
+ var bdd = 'bundledDependencies'
+ var bd = 'bundleDependencies'
if (data[bdd] && !data[bd]) {
data[bd] = data[bdd]
delete data[bdd]
}
if (data[bd] && !Array.isArray(data[bd])) {
- this.warn("nonArrayBundleDependencies")
+ this.warn('nonArrayBundleDependencies')
delete data[bd]
} else if (data[bd]) {
- data[bd] = data[bd].filter(function(bd) {
+ data[bd] = data[bd].filter(function (bd) {
if (!bd || typeof bd !== 'string') {
- this.warn("nonStringBundleDependency", bd)
+ this.warn('nonStringBundleDependency', bd)
return false
} else {
if (!data.dependencies) {
data.dependencies = {}
}
- if (!data.dependencies.hasOwnProperty(bd)) {
- this.warn("nonDependencyBundleDependency", bd)
- data.dependencies[bd] = "*"
+ if (Object.prototype.hasOwnProperty.call(data.dependencies, bd)) {
+ this.warn('nonDependencyBundleDependency', bd)
+ data.dependencies[bd] = '*'
}
return true
}
}, this)
}
- }
+ },
-, fixDependencies: function(data, strict) {
- var loose = !strict
+ fixDependencies: function (data, strict) {
objectifyDeps(data, this.warn)
addOptionalDepsToDeps(data, this.warn)
this.fixBundleDependenciesField(data)
- ;['dependencies','devDependencies'].forEach(function(deps) {
- if (!(deps in data)) return
- if (!data[deps] || typeof data[deps] !== "object") {
- this.warn("nonObjectDependencies", deps)
+ ;['dependencies', 'devDependencies'].forEach(function (deps) {
+ if (!(deps in data)) {
+ return
+ }
+ if (!data[deps] || typeof data[deps] !== 'object') {
+ this.warn('nonObjectDependencies', deps)
delete data[deps]
return
}
Object.keys(data[deps]).forEach(function (d) {
var r = data[deps][d]
if (typeof r !== 'string') {
- this.warn("nonStringDependency", d, JSON.stringify(r))
+ this.warn('nonStringDependency', d, JSON.stringify(r))
delete data[deps][d]
}
var hosted = hostedGitInfo.fromUrl(data[deps][d])
- if (hosted) data[deps][d] = hosted.toString()
+ if (hosted) {
+ data[deps][d] = hosted.toString()
+ }
}, this)
}, this)
- }
+ },
-, fixModulesField: function (data) {
+ fixModulesField: function (data) {
if (data.modules) {
- this.warn("deprecatedModules")
+ this.warn('deprecatedModules')
delete data.modules
}
- }
+ },
-, fixKeywordsField: function (data) {
- if (typeof data.keywords === "string") {
+ fixKeywordsField: function (data) {
+ if (typeof data.keywords === 'string') {
data.keywords = data.keywords.split(/,\s+/)
}
if (data.keywords && !Array.isArray(data.keywords)) {
delete data.keywords
- this.warn("nonArrayKeywords")
+ this.warn('nonArrayKeywords')
} else if (data.keywords) {
- data.keywords = data.keywords.filter(function(kw) {
- if (typeof kw !== "string" || !kw) {
- this.warn("nonStringKeyword");
+ data.keywords = data.keywords.filter(function (kw) {
+ if (typeof kw !== 'string' || !kw) {
+ this.warn('nonStringKeyword')
return false
} else {
return true
}
}, this)
}
- }
+ },
-, fixVersionField: function(data, strict) {
+ fixVersionField: function (data, strict) {
// allow "loose" semver 1.0 versions in non-strict mode
// enforce strict semver 2.0 compliance in strict mode
var loose = !strict
if (!data.version) {
- data.version = ""
+ data.version = ''
return true
}
- if (!semver.valid(data.version, loose)) {
- throw new Error('Invalid version: "'+ data.version + '"')
+ if (!isValidSemver(data.version, loose)) {
+ throw new Error('Invalid version: "' + data.version + '"')
}
- data.version = semver.clean(data.version, loose)
+ data.version = cleanSemver(data.version, loose)
return true
- }
+ },
-, fixPeople: function(data) {
+ fixPeople: function (data) {
modifyPeople(data, unParsePerson)
modifyPeople(data, parsePerson)
- }
+ },
-, fixNameField: function(data, options) {
- if (typeof options === "boolean") options = {strict: options}
- else if (typeof options === "undefined") options = {}
+ fixNameField: function (data, options) {
+ if (typeof options === 'boolean') {
+ options = {strict: options}
+ } else if (typeof options === 'undefined') {
+ options = {}
+ }
var strict = options.strict
if (!data.name && !strict) {
- data.name = ""
+ data.name = ''
return
}
- if (typeof data.name !== "string") {
- throw new Error("name field must be a string.")
+ if (typeof data.name !== 'string') {
+ throw new Error('name field must be a string.')
}
- if (!strict)
+ if (!strict) {
data.name = data.name.trim()
+ }
ensureValidName(data.name, strict, options.allowLegacyCase)
- if (isBuiltinModule(data.name))
- this.warn("conflictingName", data.name)
- }
-
+ if (isBuiltinModule(data.name)) {
+ this.warn('conflictingName', data.name)
+ }
+ },
-, fixDescriptionField: function (data) {
+ fixDescriptionField: function (data) {
if (data.description && typeof data.description !== 'string') {
- this.warn("nonStringDescription")
+ this.warn('nonStringDescription')
delete data.description
}
- if (data.readme && !data.description)
+ if (data.readme && !data.description) {
data.description = extractDescription(data.readme)
- if(data.description === undefined) delete data.description;
- if (!data.description) this.warn("missingDescription")
- }
+ }
+ if (data.description === undefined) {
+ delete data.description
+ }
+ if (!data.description) {
+ this.warn('missingDescription')
+ }
+ },
-, fixReadmeField: function (data) {
+ fixReadmeField: function (data) {
if (!data.readme) {
- this.warn("missingReadme")
- data.readme = "ERROR: No README data found!"
+ this.warn('missingReadme')
+ data.readme = 'ERROR: No README data found!'
}
- }
+ },
-, fixBugsField: function(data) {
+ fixBugsField: function (data) {
if (!data.bugs && data.repository && data.repository.url) {
var hosted = hostedGitInfo.fromUrl(data.repository.url)
- if(hosted && hosted.bugs()) {
+ if (hosted && hosted.bugs()) {
data.bugs = {url: hosted.bugs()}
}
- }
- else if(data.bugs) {
+ } else if (data.bugs) {
var emailRe = /^.+@.*\..+$/
- if(typeof data.bugs == "string") {
- if(emailRe.test(data.bugs))
- data.bugs = {email:data.bugs}
- else if(url.parse(data.bugs).protocol)
+ if (typeof data.bugs === 'string') {
+ if (emailRe.test(data.bugs)) {
+ data.bugs = {email: data.bugs}
+ /* eslint-disable-next-line node/no-deprecated-api */
+ } else if (url.parse(data.bugs).protocol) {
data.bugs = {url: data.bugs}
- else
- this.warn("nonEmailUrlBugsString")
- }
- else {
+ } else {
+ this.warn('nonEmailUrlBugsString')
+ }
+ } else {
bugsTypos(data.bugs, this.warn)
var oldBugs = data.bugs
data.bugs = {}
- if(oldBugs.url) {
- if(typeof(oldBugs.url) == "string" && url.parse(oldBugs.url).protocol)
+ if (oldBugs.url) {
+ /* eslint-disable-next-line node/no-deprecated-api */
+ if (typeof (oldBugs.url) === 'string' && url.parse(oldBugs.url).protocol) {
data.bugs.url = oldBugs.url
- else
- this.warn("nonUrlBugsUrlField")
+ } else {
+ this.warn('nonUrlBugsUrlField')
+ }
}
- if(oldBugs.email) {
- if(typeof(oldBugs.email) == "string" && emailRe.test(oldBugs.email))
+ if (oldBugs.email) {
+ if (typeof (oldBugs.email) === 'string' && emailRe.test(oldBugs.email)) {
data.bugs.email = oldBugs.email
- else
- this.warn("nonEmailBugsEmailField")
+ } else {
+ this.warn('nonEmailBugsEmailField')
+ }
}
}
- if(!data.bugs.email && !data.bugs.url) {
+ if (!data.bugs.email && !data.bugs.url) {
delete data.bugs
- this.warn("emptyNormalizedBugs")
+ this.warn('emptyNormalizedBugs')
}
}
- }
+ },
-, fixHomepageField: function(data) {
+ fixHomepageField: function (data) {
if (!data.homepage && data.repository && data.repository.url) {
var hosted = hostedGitInfo.fromUrl(data.repository.url)
- if (hosted && hosted.docs()) data.homepage = hosted.docs()
+ if (hosted && hosted.docs()) {
+ data.homepage = hosted.docs()
+ }
+ }
+ if (!data.homepage) {
+ return
}
- if (!data.homepage) return
- if(typeof data.homepage !== "string") {
- this.warn("nonUrlHomepage")
+ if (typeof data.homepage !== 'string') {
+ this.warn('nonUrlHomepage')
return delete data.homepage
}
- if(!url.parse(data.homepage).protocol) {
- data.homepage = "http://" + data.homepage
+ /* eslint-disable-next-line node/no-deprecated-api */
+ if (!url.parse(data.homepage).protocol) {
+ data.homepage = 'http://' + data.homepage
}
- }
+ },
-, fixLicenseField: function(data) {
- if (!data.license) {
- return this.warn("missingLicense")
- } else{
- if (
- typeof(data.license) !== 'string' ||
- data.license.length < 1 ||
- data.license.trim() === ''
- ) {
- this.warn("invalidLicense")
- } else {
- if (!validateLicense(data.license).validForNewPackages)
- this.warn("invalidLicense")
- }
+ fixLicenseField: function (data) {
+ const license = data.license || data.licence
+ if (!license) {
+ return this.warn('missingLicense')
}
- }
+ if (
+ typeof (license) !== 'string' ||
+ license.length < 1 ||
+ license.trim() === ''
+ ) {
+ return this.warn('invalidLicense')
+ }
+ if (!validateLicense(license).validForNewPackages) {
+ return this.warn('invalidLicense')
+ }
+ },
}
-function isValidScopedPackageName(spec) {
- if (spec.charAt(0) !== '@') return false
+function isValidScopedPackageName (spec) {
+ if (spec.charAt(0) !== '@') {
+ return false
+ }
var rest = spec.slice(1).split('/')
- if (rest.length !== 2) return false
+ if (rest.length !== 2) {
+ return false
+ }
return rest[0] && rest[1] &&
rest[0] === encodeURIComponent(rest[0]) &&
rest[1] === encodeURIComponent(rest[1])
}
-function isCorrectlyEncodedName(spec) {
- return !spec.match(/[\/@\s\+%:]/) &&
+function isCorrectlyEncodedName (spec) {
+ return !spec.match(/[/@\s+%:]/) &&
spec === encodeURIComponent(spec)
}
function ensureValidName (name, strict, allowLegacyCase) {
- if (name.charAt(0) === "." ||
+ if (name.charAt(0) === '.' ||
!(isValidScopedPackageName(name) || isCorrectlyEncodedName(name)) ||
(strict && (!allowLegacyCase) && name !== name.toLowerCase()) ||
- name.toLowerCase() === "node_modules" ||
- name.toLowerCase() === "favicon.ico") {
- throw new Error("Invalid name: " + JSON.stringify(name))
+ name.toLowerCase() === 'node_modules' ||
+ name.toLowerCase() === 'favicon.ico') {
+ throw new Error('Invalid name: ' + JSON.stringify(name))
}
}
function modifyPeople (data, fn) {
- if (data.author) data.author = fn(data.author)
- ;["maintainers", "contributors"].forEach(function (set) {
- if (!Array.isArray(data[set])) return;
+ if (data.author) {
+ data.author = fn(data.author)
+ }['maintainers', 'contributors'].forEach(function (set) {
+ if (!Array.isArray(data[set])) {
+ return
+ }
data[set] = data[set].map(fn)
})
return data
}
function unParsePerson (person) {
- if (typeof person === "string") return person
- var name = person.name || ""
+ if (typeof person === 'string') {
+ return person
+ }
+ var name = person.name || ''
var u = person.url || person.web
- var url = u ? (" ("+u+")") : ""
+ var url = u ? (' (' + u + ')') : ''
var e = person.email || person.mail
- var email = e ? (" <"+e+">") : ""
- return name+email+url
+ var email = e ? (' <' + e + '>') : ''
+ return name + email + url
}
function parsePerson (person) {
- if (typeof person !== "string") return person
- var name = person.match(/^([^\(<]+)/)
- var url = person.match(/\(([^\)]+)\)/)
+ if (typeof person !== 'string') {
+ return person
+ }
+ var name = person.match(/^([^(<]+)/)
+ var url = person.match(/\(([^)]+)\)/)
var email = person.match(/<([^>]+)>/)
var obj = {}
- if (name && name[0].trim()) obj.name = name[0].trim()
- if (email) obj.email = email[1];
- if (url) obj.url = url[1];
+ if (name && name[0].trim()) {
+ obj.name = name[0].trim()
+ }
+ if (email) {
+ obj.email = email[1]
+ }
+ if (url) {
+ obj.url = url[1]
+ }
return obj
}
function addOptionalDepsToDeps (data, warn) {
var o = data.optionalDependencies
- if (!o) return;
+ if (!o) {
+ return
+ }
var d = data.dependencies || {}
Object.keys(o).forEach(function (k) {
d[k] = o[k]
@@ -379,21 +427,25 @@ function addOptionalDepsToDeps (data, warn) {
}
function depObjectify (deps, type, warn) {
- if (!deps) return {}
- if (typeof deps === "string") {
+ if (!deps) {
+ return {}
+ }
+ if (typeof deps === 'string') {
deps = deps.trim().split(/[\n\r\s\t ,]+/)
}
- if (!Array.isArray(deps)) return deps
- warn("deprecatedArrayDependencies", type)
+ if (!Array.isArray(deps)) {
+ return deps
+ }
+ warn('deprecatedArrayDependencies', type)
var o = {}
deps.filter(function (d) {
- return typeof d === "string"
- }).forEach(function(d) {
+ return typeof d === 'string'
+ }).forEach(function (d) {
d = d.trim().split(/(:?[@\s><=])/)
var dn = d.shift()
- var dv = d.join("")
+ var dv = d.join('')
dv = dv.trim()
- dv = dv.replace(/^@/, "")
+ dv = dv.replace(/^@/, '')
o[dn] = dv
})
return o
@@ -401,16 +453,20 @@ function depObjectify (deps, type, warn) {
function objectifyDeps (data, warn) {
depTypes.forEach(function (type) {
- if (!data[type]) return;
+ if (!data[type]) {
+ return
+ }
data[type] = depObjectify(data[type], type, warn)
})
}
-function bugsTypos(bugs, warn) {
- if (!bugs) return
+function bugsTypos (bugs, warn) {
+ if (!bugs) {
+ return
+ }
Object.keys(bugs).forEach(function (k) {
if (typos.bugs[k]) {
- warn("typo", k, typos.bugs[k], "bugs")
+ warn('typo', k, typos.bugs[k], 'bugs')
bugs[typos.bugs[k]] = bugs[k]
delete bugs[k]
}
diff --git a/deps/npm/node_modules/normalize-package-data/lib/make_warning.js b/deps/npm/node_modules/normalize-package-data/lib/make_warning.js
index 4ac74ad7cb..3be9c86539 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/make_warning.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/make_warning.js
@@ -1,13 +1,12 @@
-var util = require("util")
-var messages = require("./warning_messages.json")
+var util = require('util')
+var messages = require('./warning_messages.json')
-module.exports = function() {
+module.exports = function () {
var args = Array.prototype.slice.call(arguments, 0)
var warningName = args.shift()
- if (warningName == "typo") {
- return makeTypoWarning.apply(null,args)
- }
- else {
+ if (warningName === 'typo') {
+ return makeTypoWarning.apply(null, args)
+ } else {
var msgTemplate = messages[warningName] ? messages[warningName] : warningName + ": '%s'"
args.unshift(msgTemplate)
return util.format.apply(null, args)
diff --git a/deps/npm/node_modules/normalize-package-data/lib/normalize.js b/deps/npm/node_modules/normalize-package-data/lib/normalize.js
index bd1bfef123..bf71d2c1e2 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/normalize.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/normalize.js
@@ -1,16 +1,16 @@
module.exports = normalize
-var fixer = require("./fixer")
+var fixer = require('./fixer')
normalize.fixer = fixer
-var makeWarning = require("./make_warning")
+var makeWarning = require('./make_warning')
-var fieldsToFix = ['name','version','description','repository','modules','scripts'
- ,'files','bin','man','bugs','keywords','readme','homepage','license']
-var otherThingsToFix = ['dependencies','people', 'typos']
+var fieldsToFix = ['name', 'version', 'description', 'repository', 'modules', 'scripts',
+ 'files', 'bin', 'man', 'bugs', 'keywords', 'readme', 'homepage', 'license']
+var otherThingsToFix = ['dependencies', 'people', 'typos']
-var thingsToFix = fieldsToFix.map(function(fieldName) {
- return ucFirst(fieldName) + "Field"
+var thingsToFix = fieldsToFix.map(function (fieldName) {
+ return ucFirst(fieldName) + 'Field'
})
// two ways to do this in CoffeeScript on only one line, sub-70 chars:
// thingsToFix = fieldsToFix.map (name) -> ucFirst(name) + "Field"
@@ -18,22 +18,31 @@ var thingsToFix = fieldsToFix.map(function(fieldName) {
thingsToFix = thingsToFix.concat(otherThingsToFix)
function normalize (data, warn, strict) {
- if(warn === true) warn = null, strict = true
- if(!strict) strict = false
- if(!warn || data.private) warn = function(msg) { /* noop */ }
+ if (warn === true) {
+ warn = null
+ strict = true
+ }
+ if (!strict) {
+ strict = false
+ }
+ if (!warn || data.private) {
+ warn = function (msg) { /* noop */ }
+ }
if (data.scripts &&
- data.scripts.install === "node-gyp rebuild" &&
+ data.scripts.install === 'node-gyp rebuild' &&
!data.scripts.preinstall) {
data.gypfile = true
}
- fixer.warn = function() { warn(makeWarning.apply(null, arguments)) }
- thingsToFix.forEach(function(thingName) {
- fixer["fix" + ucFirst(thingName)](data, strict)
+ fixer.warn = function () {
+ warn(makeWarning.apply(null, arguments))
+ }
+ thingsToFix.forEach(function (thingName) {
+ fixer['fix' + ucFirst(thingName)](data, strict)
})
- data._id = data.name + "@" + data.version
+ data._id = data.name + '@' + data.version
}
function ucFirst (string) {
- return string.charAt(0).toUpperCase() + string.slice(1);
+ return string.charAt(0).toUpperCase() + string.slice(1)
}
diff --git a/deps/npm/node_modules/normalize-package-data/lib/safe_format.js b/deps/npm/node_modules/normalize-package-data/lib/safe_format.js
index b07f1006d1..5fc888e545 100644
--- a/deps/npm/node_modules/normalize-package-data/lib/safe_format.js
+++ b/deps/npm/node_modules/normalize-package-data/lib/safe_format.js
@@ -1,9 +1,11 @@
var util = require('util')
-module.exports = function() {
+module.exports = function () {
var args = Array.prototype.slice.call(arguments, 0)
- args.forEach(function(arg) {
- if (!arg) throw new TypeError('Bad arguments.')
+ args.forEach(function (arg) {
+ if (!arg) {
+ throw new TypeError('Bad arguments.')
+ }
})
return util.format.apply(null, arguments)
}
diff --git a/deps/npm/node_modules/normalize-package-data/package.json b/deps/npm/node_modules/normalize-package-data/package.json
index 09b184c19d..17f167ea13 100644
--- a/deps/npm/node_modules/normalize-package-data/package.json
+++ b/deps/npm/node_modules/normalize-package-data/package.json
@@ -1,6 +1,6 @@
{
"name": "normalize-package-data",
- "version": "3.0.2",
+ "version": "3.0.3",
"author": "Meryn Stol <merynstol@gmail.com>",
"description": "Normalizes data that can be found in package.json files.",
"license": "BSD-2-Clause",
@@ -13,16 +13,22 @@
"postversion": "npm publish",
"prepublishOnly": "git push origin --follow-tags",
"preversion": "npm test",
- "test": "tap test/*.js"
+ "test": "tap test/*.js --branches 85 --functions 90 --lines 85 --statements 85",
+ "npmclilint": "npmcli-lint",
+ "lint": "npm run npmclilint -- \"lib/**/*.*js\" \"test/**/*.*js\"",
+ "lintfix": "npm run lint -- --fix",
+ "posttest": "npm run lint --",
+ "postsnap": "npm run lintfix --"
},
"dependencies": {
"hosted-git-info": "^4.0.1",
- "resolve": "^1.20.0",
+ "is-core-module": "^2.5.0",
"semver": "^7.3.4",
"validate-npm-package-license": "^3.0.1"
},
"devDependencies": {
- "tap": "^14.11.0"
+ "@npmcli/lint": "^1.0.2",
+ "tap": "^15.0.9"
},
"files": [
"lib/*.js",
diff --git a/deps/npm/node_modules/npmlog/log.js b/deps/npm/node_modules/npmlog/log.js
index 341f3313ab..069154262e 100644
--- a/deps/npm/node_modules/npmlog/log.js
+++ b/deps/npm/node_modules/npmlog/log.js
@@ -13,11 +13,12 @@ var stream = process.stderr
Object.defineProperty(log, 'stream', {
set: function (newStream) {
stream = newStream
- if (this.gauge) this.gauge.setWriteTo(stream, stream)
+ if (this.gauge)
+ this.gauge.setWriteTo(stream, stream)
},
get: function () {
return stream
- }
+ },
})
// by default, decide based on tty-ness.
@@ -46,8 +47,8 @@ log.gauge = new Gauge(stream, {
{type: 'activityIndicator', kerning: 1, length: 1},
{type: 'section', default: ''},
':',
- {type: 'logline', kerning: 1, default: ''}
- ]
+ {type: 'logline', kerning: 1, default: ''},
+ ],
})
log.tracker = new Progress.TrackerGroup()
@@ -77,15 +78,20 @@ log.setGaugeTemplate = function (template) {
}
log.enableProgress = function () {
- if (this.progressEnabled) return
+ if (this.progressEnabled)
+ return
+
this.progressEnabled = true
this.tracker.on('change', this.showProgress)
- if (this._pause) return
+ if (this._paused)
+ return
+
this.gauge.enable()
}
log.disableProgress = function () {
- if (!this.progressEnabled) return
+ if (!this.progressEnabled)
+ return
this.progressEnabled = false
this.tracker.removeListener('change', this.showProgress)
this.gauge.disable()
@@ -97,10 +103,20 @@ var mixinLog = function (tracker) {
// mixin the public methods from log into the tracker
// (except: conflicts and one's we handle specially)
Object.keys(log).forEach(function (P) {
- if (P[0] === '_') return
- if (trackerConstructors.filter(function (C) { return C === P }).length) return
- if (tracker[P]) return
- if (typeof log[P] !== 'function') return
+ if (P[0] === '_')
+ return
+
+ if (trackerConstructors.filter(function (C) {
+ return C === P
+ }).length)
+ return
+
+ if (tracker[P])
+ return
+
+ if (typeof log[P] !== 'function')
+ return
+
var func = log[P]
tracker[P] = function () {
return func.apply(log, arguments)
@@ -111,7 +127,9 @@ var mixinLog = function (tracker) {
if (tracker instanceof Progress.TrackerGroup) {
trackerConstructors.forEach(function (C) {
var func = tracker[C]
- tracker[C] = function () { return mixinLog(func.apply(tracker, arguments)) }
+ tracker[C] = function () {
+ return mixinLog(func.apply(tracker, arguments))
+ }
})
}
return tracker
@@ -119,24 +137,34 @@ var mixinLog = function (tracker) {
// Add tracker constructors to the top level log object
trackerConstructors.forEach(function (C) {
- log[C] = function () { return mixinLog(this.tracker[C].apply(this.tracker, arguments)) }
+ log[C] = function () {
+ return mixinLog(this.tracker[C].apply(this.tracker, arguments))
+ }
})
log.clearProgress = function (cb) {
- if (!this.progressEnabled) return cb && process.nextTick(cb)
+ if (!this.progressEnabled)
+ return cb && process.nextTick(cb)
+
this.gauge.hide(cb)
}
log.showProgress = function (name, completed) {
- if (!this.progressEnabled) return
+ if (!this.progressEnabled)
+ return
+
var values = {}
- if (name) values.section = name
+ if (name)
+ values.section = name
+
var last = log.record[log.record.length - 1]
if (last) {
values.subsection = last.prefix
var disp = log.disp[last.level] || last.level
var logline = this._format(disp, log.style[last.level])
- if (last.prefix) logline += ' ' + this._format(last.prefix, this.prefixStyle)
+ if (last.prefix)
+ logline += ' ' + this._format(last.prefix, this.prefixStyle)
+
logline += ' ' + last.message.split(/\r?\n/)[0]
values.logline = logline
}
@@ -147,11 +175,14 @@ log.showProgress = function (name, completed) {
// temporarily stop emitting, but don't drop
log.pause = function () {
this._paused = true
- if (this.progressEnabled) this.gauge.disable()
+ if (this.progressEnabled)
+ this.gauge.disable()
}
log.resume = function () {
- if (!this._paused) return
+ if (!this._paused)
+ return
+
this._paused = false
var b = this._buffer
@@ -159,7 +190,8 @@ log.resume = function () {
b.forEach(function (m) {
this.emitLog(m)
}, this)
- if (this.progressEnabled) this.gauge.enable()
+ if (this.progressEnabled)
+ this.gauge.enable()
}
log._buffer = []
@@ -180,28 +212,30 @@ log.log = function (lvl, prefix, message) {
var arg = a[i - 2] = arguments[i]
// resolve stack traces to a plain string.
- if (typeof arg === 'object' && arg &&
- (arg instanceof Error) && arg.stack) {
-
+ if (typeof arg === 'object' && arg instanceof Error && arg.stack) {
Object.defineProperty(arg, 'stack', {
value: stack = arg.stack + '',
enumerable: true,
- writable: true
+ writable: true,
})
}
}
- if (stack) a.unshift(stack + '\n')
+ if (stack)
+ a.unshift(stack + '\n')
message = util.format.apply(util, a)
- var m = { id: id++,
- level: lvl,
- prefix: String(prefix || ''),
- message: message,
- messageRaw: a }
+ var m = {
+ id: id++,
+ level: lvl,
+ prefix: String(prefix || ''),
+ message: message,
+ messageRaw: a,
+ }
this.emit('log', m)
this.emit('log.' + lvl, m)
- if (m.prefix) this.emit(m.prefix, m)
+ if (m.prefix)
+ this.emit(m.prefix, m)
this.record.push(m)
var mrs = this.maxRecordSize
@@ -219,11 +253,18 @@ log.emitLog = function (m) {
this._buffer.push(m)
return
}
- if (this.progressEnabled) this.gauge.pulse(m.prefix)
+ if (this.progressEnabled)
+ this.gauge.pulse(m.prefix)
+
var l = this.levels[m.level]
- if (l === undefined) return
- if (l < this.levels[this.level]) return
- if (l > 0 && !isFinite(l)) return
+ if (l === undefined)
+ return
+
+ if (l < this.levels[this.level])
+ return
+
+ if (l > 0 && !isFinite(l))
+ return
// If 'disp' is null or undefined, use the lvl as a default
// Allows: '', 0 as valid disp
@@ -236,7 +277,9 @@ log.emitLog = function (m) {
}
this.write(disp, log.style[m.level])
var p = m.prefix || ''
- if (p) this.write(' ')
+ if (p)
+ this.write(' ')
+
this.write(p, this.prefixStyle)
this.write(' ' + line + '\n')
}, this)
@@ -244,45 +287,62 @@ log.emitLog = function (m) {
}
log._format = function (msg, style) {
- if (!stream) return
+ if (!stream)
+ return
var output = ''
if (this.useColor()) {
style = style || {}
var settings = []
- if (style.fg) settings.push(style.fg)
- if (style.bg) settings.push('bg' + style.bg[0].toUpperCase() + style.bg.slice(1))
- if (style.bold) settings.push('bold')
- if (style.underline) settings.push('underline')
- if (style.inverse) settings.push('inverse')
- if (settings.length) output += consoleControl.color(settings)
- if (style.beep) output += consoleControl.beep()
+ if (style.fg)
+ settings.push(style.fg)
+
+ if (style.bg)
+ settings.push('bg' + style.bg[0].toUpperCase() + style.bg.slice(1))
+
+ if (style.bold)
+ settings.push('bold')
+
+ if (style.underline)
+ settings.push('underline')
+
+ if (style.inverse)
+ settings.push('inverse')
+
+ if (settings.length)
+ output += consoleControl.color(settings)
+
+ if (style.beep)
+ output += consoleControl.beep()
}
output += msg
- if (this.useColor()) {
+ if (this.useColor())
output += consoleControl.color('reset')
- }
+
return output
}
log.write = function (msg, style) {
- if (!stream) return
+ if (!stream)
+ return
stream.write(this._format(msg, style))
}
log.addLevel = function (lvl, n, style, disp) {
// If 'disp' is null or undefined, use the lvl as a default
- if (disp == null) disp = lvl
+ if (disp == null)
+ disp = lvl
+
this.levels[lvl] = n
this.style[lvl] = style
if (!this[lvl]) {
this[lvl] = function () {
var a = new Array(arguments.length + 1)
a[0] = lvl
- for (var i = 0; i < arguments.length; i++) {
+ for (var i = 0; i < arguments.length; i++)
a[i + 1] = arguments[i]
- }
+
return this.log.apply(this, a)
}.bind(this)
}
diff --git a/deps/npm/node_modules/npmlog/package.json b/deps/npm/node_modules/npmlog/package.json
index 7220f8e72a..5288b9ca06 100644
--- a/deps/npm/node_modules/npmlog/package.json
+++ b/deps/npm/node_modules/npmlog/package.json
@@ -2,7 +2,7 @@
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"name": "npmlog",
"description": "logger for npm",
- "version": "4.1.2",
+ "version": "5.0.0",
"repository": {
"type": "git",
"url": "https://github.com/npm/npmlog.git"
@@ -12,17 +12,22 @@
"log.js"
],
"scripts": {
- "test": "standard && tap test/*.js"
+ "test": "tap test/*.js --branches=95",
+ "npmclilint": "npmcli-lint",
+ "lint": "npm run npmclilint -- \"*.*js\" \"test/**/*.*js\"",
+ "lintfix": "npm run lint -- --fix",
+ "posttest": "npm run lint --",
+ "postsnap": "npm run lintfix --"
},
"dependencies": {
- "are-we-there-yet": "~1.1.2",
- "console-control-strings": "~1.1.0",
- "gauge": "~2.7.3",
- "set-blocking": "~2.0.0"
+ "are-we-there-yet": "^1.1.5",
+ "console-control-strings": "^1.1.0",
+ "gauge": "^3.0.0",
+ "set-blocking": "^2.0.0"
},
"devDependencies": {
- "standard": "~7.1.2",
- "tap": "~5.7.3"
+ "@npmcli/lint": "^1.0.1",
+ "tap": "^15.0.9"
},
"license": "ISC"
}
diff --git a/deps/npm/node_modules/path-parse/LICENSE b/deps/npm/node_modules/path-parse/LICENSE
deleted file mode 100644
index 810f3dbea8..0000000000
--- a/deps/npm/node_modules/path-parse/LICENSE
+++ /dev/null
@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2015 Javier Blanco
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
diff --git a/deps/npm/node_modules/path-parse/index.js b/deps/npm/node_modules/path-parse/index.js
deleted file mode 100644
index ffb22a1ead..0000000000
--- a/deps/npm/node_modules/path-parse/index.js
+++ /dev/null
@@ -1,75 +0,0 @@
-'use strict';
-
-var isWindows = process.platform === 'win32';
-
-// Regex to split a windows path into into [dir, root, basename, name, ext]
-var splitWindowsRe =
- /^(((?:[a-zA-Z]:|[\\\/]{2}[^\\\/]+[\\\/]+[^\\\/]+)?[\\\/]?)(?:[^\\\/]*[\\\/])*)((\.{1,2}|[^\\\/]+?|)(\.[^.\/\\]*|))[\\\/]*$/;
-
-var win32 = {};
-
-function win32SplitPath(filename) {
- return splitWindowsRe.exec(filename).slice(1);
-}
-
-win32.parse = function(pathString) {
- if (typeof pathString !== 'string') {
- throw new TypeError(
- "Parameter 'pathString' must be a string, not " + typeof pathString
- );
- }
- var allParts = win32SplitPath(pathString);
- if (!allParts || allParts.length !== 5) {
- throw new TypeError("Invalid path '" + pathString + "'");
- }
- return {
- root: allParts[1],
- dir: allParts[0] === allParts[1] ? allParts[0] : allParts[0].slice(0, -1),
- base: allParts[2],
- ext: allParts[4],
- name: allParts[3]
- };
-};
-
-
-
-// Split a filename into [dir, root, basename, name, ext], unix version
-// 'root' is just a slash, or nothing.
-var splitPathRe =
- /^((\/?)(?:[^\/]*\/)*)((\.{1,2}|[^\/]+?|)(\.[^.\/]*|))[\/]*$/;
-var posix = {};
-
-
-function posixSplitPath(filename) {
- return splitPathRe.exec(filename).slice(1);
-}
-
-
-posix.parse = function(pathString) {
- if (typeof pathString !== 'string') {
- throw new TypeError(
- "Parameter 'pathString' must be a string, not " + typeof pathString
- );
- }
- var allParts = posixSplitPath(pathString);
- if (!allParts || allParts.length !== 5) {
- throw new TypeError("Invalid path '" + pathString + "'");
- }
-
- return {
- root: allParts[1],
- dir: allParts[0].slice(0, -1),
- base: allParts[2],
- ext: allParts[4],
- name: allParts[3],
- };
-};
-
-
-if (isWindows)
- module.exports = win32.parse;
-else /* posix */
- module.exports = posix.parse;
-
-module.exports.posix = posix.parse;
-module.exports.win32 = win32.parse;
diff --git a/deps/npm/node_modules/path-parse/package.json b/deps/npm/node_modules/path-parse/package.json
deleted file mode 100644
index 36c23f84e7..0000000000
--- a/deps/npm/node_modules/path-parse/package.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "name": "path-parse",
- "version": "1.0.7",
- "description": "Node.js path.parse() ponyfill",
- "main": "index.js",
- "scripts": {
- "test": "node test.js"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/jbgutierrez/path-parse.git"
- },
- "keywords": [
- "path",
- "paths",
- "file",
- "dir",
- "parse",
- "built-in",
- "util",
- "utils",
- "core",
- "ponyfill",
- "polyfill",
- "shim"
- ],
- "author": "Javier Blanco <http://jbgutierrez.info>",
- "license": "MIT",
- "bugs": {
- "url": "https://github.com/jbgutierrez/path-parse/issues"
- },
- "homepage": "https://github.com/jbgutierrez/path-parse#readme"
-}
diff --git a/deps/npm/node_modules/read-package-json-fast/index.js b/deps/npm/node_modules/read-package-json-fast/index.js
index bc1c059272..646ff7dfbb 100644
--- a/deps/npm/node_modules/read-package-json-fast/index.js
+++ b/deps/npm/node_modules/read-package-json-fast/index.js
@@ -1,15 +1,56 @@
const {promisify} = require('util')
const fs = require('fs')
const readFile = promisify(fs.readFile)
+const lstat = promisify(fs.lstat)
+const readdir = promisify(fs.readdir)
const parse = require('json-parse-even-better-errors')
+
+const { resolve, dirname, join, relative } = require('path')
+
const rpj = path => readFile(path, 'utf8')
- .then(data => normalize(stripUnderscores(parse(data))))
+ .then(data => readBinDir(path, normalize(stripUnderscores(parse(data)))))
.catch(er => {
er.path = path
throw er
})
+
const normalizePackageBin = require('npm-normalize-package-bin')
+// load the directories.bin folder as a 'bin' object
+const readBinDir = async (path, data) => {
+ if (data.bin)
+ return data
+
+ const m = data.directories && data.directories.bin
+ if (!m || typeof m !== 'string')
+ return data
+
+ // cut off any monkey business, like setting directories.bin
+ // to ../../../etc/passwd or /etc/passwd or something like that.
+ const root = dirname(path)
+ const dir = join('.', join('/', m))
+ data.bin = await walkBinDir(root, dir, {})
+ return data
+}
+
+const walkBinDir = async (root, dir, obj) => {
+ const entries = await readdir(resolve(root, dir)).catch(() => [])
+ for (const entry of entries) {
+ if (entry.charAt(0) === '.')
+ continue
+ const f = resolve(root, dir, entry)
+ // ignore stat errors, weird file types, symlinks, etc.
+ const st = await lstat(f).catch(() => null)
+ if (!st)
+ continue
+ else if (st.isFile())
+ obj[entry] = relative(root, f)
+ else if (st.isDirectory())
+ await walkBinDir(root, join(dir, entry), obj)
+ }
+ return obj
+}
+
// do not preserve _fields set in files, they are sus
const stripUnderscores = data => {
for (const key of Object.keys(data).filter(k => /^_/.test(k)))
diff --git a/deps/npm/node_modules/read-package-json-fast/package.json b/deps/npm/node_modules/read-package-json-fast/package.json
index 388e765958..c3a9f7dc5c 100644
--- a/deps/npm/node_modules/read-package-json-fast/package.json
+++ b/deps/npm/node_modules/read-package-json-fast/package.json
@@ -1,6 +1,6 @@
{
"name": "read-package-json-fast",
- "version": "2.0.2",
+ "version": "2.0.3",
"description": "Like read-package-json, but faster",
"author": "Isaac Z. Schlueter <i@izs.me> (https://izs.me)",
"license": "ISC",
@@ -18,7 +18,7 @@
"check-coverage": true
},
"devDependencies": {
- "tap": "^14.10.1"
+ "tap": "^15.0.9"
},
"dependencies": {
"json-parse-even-better-errors": "^2.3.0",
diff --git a/deps/npm/node_modules/read-package-json/package.json b/deps/npm/node_modules/read-package-json/package.json
index 50feca72fb..6589be8063 100644
--- a/deps/npm/node_modules/read-package-json/package.json
+++ b/deps/npm/node_modules/read-package-json/package.json
@@ -1,6 +1,6 @@
{
"name": "read-package-json",
- "version": "3.0.1",
+ "version": "4.0.0",
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"description": "The thing npm uses to read package.json files with semantics and defaults and validation",
"repository": {
diff --git a/deps/npm/node_modules/read-package-json/read-json.js b/deps/npm/node_modules/read-package-json/read-json.js
index 64cc3fe194..4226e77c0f 100644
--- a/deps/npm/node_modules/read-package-json/read-json.js
+++ b/deps/npm/node_modules/read-package-json/read-json.js
@@ -469,6 +469,6 @@ function parseIndex (data) {
function parseError (ex, file) {
var e = new Error('Failed to parse json\n' + ex.message)
e.code = 'EJSONPARSE'
- e.file = file
+ e.path = file
return e
}
diff --git a/deps/npm/node_modules/resolve/SECURITY.md b/deps/npm/node_modules/resolve/SECURITY.md
deleted file mode 100644
index 82e4285adc..0000000000
--- a/deps/npm/node_modules/resolve/SECURITY.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# Security
-
-Please email [@ljharb](https://github.com/ljharb) or see https://tidelift.com/security if you have a potential security vulnerability to report.
diff --git a/deps/npm/node_modules/resolve/appveyor.yml b/deps/npm/node_modules/resolve/appveyor.yml
deleted file mode 100644
index 747fbdbba5..0000000000
--- a/deps/npm/node_modules/resolve/appveyor.yml
+++ /dev/null
@@ -1,74 +0,0 @@
-version: 1.0.{build}
-skip_branch_with_pr: true
-build: off
-
-environment:
- matrix:
- #- nodejs_version: "15"
- - nodejs_version: "14"
- - nodejs_version: "13"
- - nodejs_version: "12"
- - nodejs_version: "11"
- - nodejs_version: "10"
- - nodejs_version: "9"
- - nodejs_version: "8"
- - nodejs_version: "7"
- - nodejs_version: "6"
- - nodejs_version: "5"
- - nodejs_version: "4"
- - nodejs_version: "3"
- - nodejs_version: "2"
- - nodejs_version: "1"
- - nodejs_version: "0.12"
- - nodejs_version: "0.10"
- - nodejs_version: "0.8"
- - nodejs_version: "0.6"
-matrix:
- # fast_finish: true
- allow_failures:
- - nodejs_version: "5" # due to windows npm bug, registry-side
- - nodejs_version: "0.8"
- # platform: x86 # x64 has started failing on the registry side, around early November 2020
- - nodejs_version: "0.6"
-
-platform:
- - x86
- - x64
-
-# Install scripts. (runs after repo cloning)
-install:
- # Fix symlinks in working copy (see https://github.com/appveyor/ci/issues/650#issuecomment-186592582) / https://github.com/charleskorn/batect/commit/d08986802ec43086902958c4ee7e57ff3e71dbef
- - git config core.symlinks true
- - git reset --hard
- # Get the latest stable version of Node.js or io.js
- - ps: if ($env:nodejs_version -ne '0.6') { Install-Product node $env:nodejs_version $env:platform }
- - ps: Update-NodeJsInstallation (Get-NodeJsLatestBuild $env:nodejs_version) $env:platform
- - IF %nodejs_version% EQU 0.6 npm config set strict-ssl false && npm -g install npm@1.3
- - IF %nodejs_version% EQU 0.8 npm config set strict-ssl false && npm -g install npm@1.4.28 && npm install -g npm@4.5
- - IF %nodejs_version% EQU 1 npm -g install npm@2.9
- - IF %nodejs_version% EQU 2 npm -g install npm@4
- - IF %nodejs_version% EQU 3 npm -g install npm@4
- - IF %nodejs_version% EQU 4 npm -g install npm@5.3
- - IF %nodejs_version% EQU 5 npm -g install npm@5.3
- - IF %nodejs_version% EQU 6 npm -g install npm@6.9
- - IF %nodejs_version% EQU 7 npm -g install npm@6
- - IF %nodejs_version% EQU 8 npm -g install npm@6
- - IF %nodejs_version% EQU 9 npm -g install npm@6.9
- - IF %nodejs_version% EQU 10 npm -g install npm@7
- - IF %nodejs_version% EQU 11 npm -g install npm@7
- - IF %nodejs_version% EQU 12 npm -g install npm@7
- - IF %nodejs_version% EQU 13 npm -g install npm@7
- - IF %nodejs_version% EQU 14 npm -g install npm@7
- - IF %nodejs_version% EQU 15 npm -g install npm@7
- - set PATH=%APPDATA%\npm;%PATH%
- #- IF %nodejs_version% NEQ 0.6 AND %nodejs_version% NEQ 0.8 npm -g install npm
- # install modules
- - npm install
-
-# Post-install test scripts.
-test_script:
- # Output useful info for debugging.
- - node --version
- - npm --version
- # run tests
- - npm run tests-only
diff --git a/deps/npm/node_modules/resolve/example/async.js b/deps/npm/node_modules/resolve/example/async.js
deleted file mode 100644
index 20e65dc281..0000000000
--- a/deps/npm/node_modules/resolve/example/async.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var resolve = require('../');
-resolve('tap', { basedir: __dirname }, function (err, res) {
- if (err) console.error(err);
- else console.log(res);
-});
diff --git a/deps/npm/node_modules/resolve/example/sync.js b/deps/npm/node_modules/resolve/example/sync.js
deleted file mode 100644
index 54b2cc1004..0000000000
--- a/deps/npm/node_modules/resolve/example/sync.js
+++ /dev/null
@@ -1,3 +0,0 @@
-var resolve = require('../');
-var res = resolve.sync('tap', { basedir: __dirname });
-console.log(res);
diff --git a/deps/npm/node_modules/resolve/index.js b/deps/npm/node_modules/resolve/index.js
deleted file mode 100644
index 125d814642..0000000000
--- a/deps/npm/node_modules/resolve/index.js
+++ /dev/null
@@ -1,6 +0,0 @@
-var async = require('./lib/async');
-async.core = require('./lib/core');
-async.isCore = require('./lib/is-core');
-async.sync = require('./lib/sync');
-
-module.exports = async;
diff --git a/deps/npm/node_modules/resolve/lib/async.js b/deps/npm/node_modules/resolve/lib/async.js
deleted file mode 100644
index 02e80ac80e..0000000000
--- a/deps/npm/node_modules/resolve/lib/async.js
+++ /dev/null
@@ -1,320 +0,0 @@
-var fs = require('fs');
-var path = require('path');
-var caller = require('./caller');
-var nodeModulesPaths = require('./node-modules-paths');
-var normalizeOptions = require('./normalize-options');
-var isCore = require('is-core-module');
-
-var realpathFS = fs.realpath && typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath;
-
-var defaultIsFile = function isFile(file, cb) {
- fs.stat(file, function (err, stat) {
- if (!err) {
- return cb(null, stat.isFile() || stat.isFIFO());
- }
- if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
- return cb(err);
- });
-};
-
-var defaultIsDir = function isDirectory(dir, cb) {
- fs.stat(dir, function (err, stat) {
- if (!err) {
- return cb(null, stat.isDirectory());
- }
- if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
- return cb(err);
- });
-};
-
-var defaultRealpath = function realpath(x, cb) {
- realpathFS(x, function (realpathErr, realPath) {
- if (realpathErr && realpathErr.code !== 'ENOENT') cb(realpathErr);
- else cb(null, realpathErr ? x : realPath);
- });
-};
-
-var maybeRealpath = function maybeRealpath(realpath, x, opts, cb) {
- if (opts && opts.preserveSymlinks === false) {
- realpath(x, cb);
- } else {
- cb(null, x);
- }
-};
-
-var defaultReadPackage = function defaultReadPackage(readFile, pkgfile, cb) {
- readFile(pkgfile, function (readFileErr, body) {
- if (readFileErr) cb(readFileErr);
- else {
- try {
- var pkg = JSON.parse(body);
- cb(null, pkg);
- } catch (jsonErr) {
- cb(null);
- }
- }
- });
-};
-
-var getPackageCandidates = function getPackageCandidates(x, start, opts) {
- var dirs = nodeModulesPaths(start, opts, x);
- for (var i = 0; i < dirs.length; i++) {
- dirs[i] = path.join(dirs[i], x);
- }
- return dirs;
-};
-
-module.exports = function resolve(x, options, callback) {
- var cb = callback;
- var opts = options;
- if (typeof options === 'function') {
- cb = opts;
- opts = {};
- }
- if (typeof x !== 'string') {
- var err = new TypeError('Path must be a string.');
- return process.nextTick(function () {
- cb(err);
- });
- }
-
- opts = normalizeOptions(x, opts);
-
- var isFile = opts.isFile || defaultIsFile;
- var isDirectory = opts.isDirectory || defaultIsDir;
- var readFile = opts.readFile || fs.readFile;
- var realpath = opts.realpath || defaultRealpath;
- var readPackage = opts.readPackage || defaultReadPackage;
- if (opts.readFile && opts.readPackage) {
- var conflictErr = new TypeError('`readFile` and `readPackage` are mutually exclusive.');
- return process.nextTick(function () {
- cb(conflictErr);
- });
- }
- var packageIterator = opts.packageIterator;
-
- var extensions = opts.extensions || ['.js'];
- var includeCoreModules = opts.includeCoreModules !== false;
- var basedir = opts.basedir || path.dirname(caller());
- var parent = opts.filename || basedir;
-
- opts.paths = opts.paths || [];
-
- // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory
- var absoluteStart = path.resolve(basedir);
-
- maybeRealpath(
- realpath,
- absoluteStart,
- opts,
- function (err, realStart) {
- if (err) cb(err);
- else init(realStart);
- }
- );
-
- var res;
- function init(basedir) {
- if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) {
- res = path.resolve(basedir, x);
- if (x === '.' || x === '..' || x.slice(-1) === '/') res += '/';
- if ((/\/$/).test(x) && res === basedir) {
- loadAsDirectory(res, opts.package, onfile);
- } else loadAsFile(res, opts.package, onfile);
- } else if (includeCoreModules && isCore(x)) {
- return cb(null, x);
- } else loadNodeModules(x, basedir, function (err, n, pkg) {
- if (err) cb(err);
- else if (n) {
- return maybeRealpath(realpath, n, opts, function (err, realN) {
- if (err) {
- cb(err);
- } else {
- cb(null, realN, pkg);
- }
- });
- } else {
- var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'");
- moduleError.code = 'MODULE_NOT_FOUND';
- cb(moduleError);
- }
- });
- }
-
- function onfile(err, m, pkg) {
- if (err) cb(err);
- else if (m) cb(null, m, pkg);
- else loadAsDirectory(res, function (err, d, pkg) {
- if (err) cb(err);
- else if (d) {
- maybeRealpath(realpath, d, opts, function (err, realD) {
- if (err) {
- cb(err);
- } else {
- cb(null, realD, pkg);
- }
- });
- } else {
- var moduleError = new Error("Cannot find module '" + x + "' from '" + parent + "'");
- moduleError.code = 'MODULE_NOT_FOUND';
- cb(moduleError);
- }
- });
- }
-
- function loadAsFile(x, thePackage, callback) {
- var loadAsFilePackage = thePackage;
- var cb = callback;
- if (typeof loadAsFilePackage === 'function') {
- cb = loadAsFilePackage;
- loadAsFilePackage = undefined;
- }
-
- var exts = [''].concat(extensions);
- load(exts, x, loadAsFilePackage);
-
- function load(exts, x, loadPackage) {
- if (exts.length === 0) return cb(null, undefined, loadPackage);
- var file = x + exts[0];
-
- var pkg = loadPackage;
- if (pkg) onpkg(null, pkg);
- else loadpkg(path.dirname(file), onpkg);
-
- function onpkg(err, pkg_, dir) {
- pkg = pkg_;
- if (err) return cb(err);
- if (dir && pkg && opts.pathFilter) {
- var rfile = path.relative(dir, file);
- var rel = rfile.slice(0, rfile.length - exts[0].length);
- var r = opts.pathFilter(pkg, x, rel);
- if (r) return load(
- [''].concat(extensions.slice()),
- path.resolve(dir, r),
- pkg
- );
- }
- isFile(file, onex);
- }
- function onex(err, ex) {
- if (err) return cb(err);
- if (ex) return cb(null, file, pkg);
- load(exts.slice(1), x, pkg);
- }
- }
- }
-
- function loadpkg(dir, cb) {
- if (dir === '' || dir === '/') return cb(null);
- if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) {
- return cb(null);
- }
- if ((/[/\\]node_modules[/\\]*$/).test(dir)) return cb(null);
-
- maybeRealpath(realpath, dir, opts, function (unwrapErr, pkgdir) {
- if (unwrapErr) return loadpkg(path.dirname(dir), cb);
- var pkgfile = path.join(pkgdir, 'package.json');
- isFile(pkgfile, function (err, ex) {
- // on err, ex is false
- if (!ex) return loadpkg(path.dirname(dir), cb);
-
- readPackage(readFile, pkgfile, function (err, pkgParam) {
- if (err) cb(err);
-
- var pkg = pkgParam;
-
- if (pkg && opts.packageFilter) {
- pkg = opts.packageFilter(pkg, pkgfile);
- }
- cb(null, pkg, dir);
- });
- });
- });
- }
-
- function loadAsDirectory(x, loadAsDirectoryPackage, callback) {
- var cb = callback;
- var fpkg = loadAsDirectoryPackage;
- if (typeof fpkg === 'function') {
- cb = fpkg;
- fpkg = opts.package;
- }
-
- maybeRealpath(realpath, x, opts, function (unwrapErr, pkgdir) {
- if (unwrapErr) return cb(unwrapErr);
- var pkgfile = path.join(pkgdir, 'package.json');
- isFile(pkgfile, function (err, ex) {
- if (err) return cb(err);
- if (!ex) return loadAsFile(path.join(x, 'index'), fpkg, cb);
-
- readPackage(readFile, pkgfile, function (err, pkgParam) {
- if (err) return cb(err);
-
- var pkg = pkgParam;
-
- if (pkg && opts.packageFilter) {
- pkg = opts.packageFilter(pkg, pkgfile);
- }
-
- if (pkg && pkg.main) {
- if (typeof pkg.main !== 'string') {
- var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string');
- mainError.code = 'INVALID_PACKAGE_MAIN';
- return cb(mainError);
- }
- if (pkg.main === '.' || pkg.main === './') {
- pkg.main = 'index';
- }
- loadAsFile(path.resolve(x, pkg.main), pkg, function (err, m, pkg) {
- if (err) return cb(err);
- if (m) return cb(null, m, pkg);
- if (!pkg) return loadAsFile(path.join(x, 'index'), pkg, cb);
-
- var dir = path.resolve(x, pkg.main);
- loadAsDirectory(dir, pkg, function (err, n, pkg) {
- if (err) return cb(err);
- if (n) return cb(null, n, pkg);
- loadAsFile(path.join(x, 'index'), pkg, cb);
- });
- });
- return;
- }
-
- loadAsFile(path.join(x, '/index'), pkg, cb);
- });
- });
- });
- }
-
- function processDirs(cb, dirs) {
- if (dirs.length === 0) return cb(null, undefined);
- var dir = dirs[0];
-
- isDirectory(path.dirname(dir), isdir);
-
- function isdir(err, isdir) {
- if (err) return cb(err);
- if (!isdir) return processDirs(cb, dirs.slice(1));
- loadAsFile(dir, opts.package, onfile);
- }
-
- function onfile(err, m, pkg) {
- if (err) return cb(err);
- if (m) return cb(null, m, pkg);
- loadAsDirectory(dir, opts.package, ondir);
- }
-
- function ondir(err, n, pkg) {
- if (err) return cb(err);
- if (n) return cb(null, n, pkg);
- processDirs(cb, dirs.slice(1));
- }
- }
- function loadNodeModules(x, start, cb) {
- var thunk = function () { return getPackageCandidates(x, start, opts); };
- processDirs(
- cb,
- packageIterator ? packageIterator(x, start, thunk, opts) : thunk()
- );
- }
-};
diff --git a/deps/npm/node_modules/resolve/lib/caller.js b/deps/npm/node_modules/resolve/lib/caller.js
deleted file mode 100644
index b14a2804ae..0000000000
--- a/deps/npm/node_modules/resolve/lib/caller.js
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = function () {
- // see https://code.google.com/p/v8/wiki/JavaScriptStackTraceApi
- var origPrepareStackTrace = Error.prepareStackTrace;
- Error.prepareStackTrace = function (_, stack) { return stack; };
- var stack = (new Error()).stack;
- Error.prepareStackTrace = origPrepareStackTrace;
- return stack[2].getFileName();
-};
diff --git a/deps/npm/node_modules/resolve/lib/core.js b/deps/npm/node_modules/resolve/lib/core.js
deleted file mode 100644
index c417d23c5a..0000000000
--- a/deps/npm/node_modules/resolve/lib/core.js
+++ /dev/null
@@ -1,53 +0,0 @@
-var current = (process.versions && process.versions.node && process.versions.node.split('.')) || [];
-
-function specifierIncluded(specifier) {
- var parts = specifier.split(' ');
- var op = parts.length > 1 ? parts[0] : '=';
- var versionParts = (parts.length > 1 ? parts[1] : parts[0]).split('.');
-
- for (var i = 0; i < 3; ++i) {
- var cur = parseInt(current[i] || 0, 10);
- var ver = parseInt(versionParts[i] || 0, 10);
- if (cur === ver) {
- continue; // eslint-disable-line no-restricted-syntax, no-continue
- }
- if (op === '<') {
- return cur < ver;
- } else if (op === '>=') {
- return cur >= ver;
- } else {
- return false;
- }
- }
- return op === '>=';
-}
-
-function matchesRange(range) {
- var specifiers = range.split(/ ?&& ?/);
- if (specifiers.length === 0) { return false; }
- for (var i = 0; i < specifiers.length; ++i) {
- if (!specifierIncluded(specifiers[i])) { return false; }
- }
- return true;
-}
-
-function versionIncluded(specifierValue) {
- if (typeof specifierValue === 'boolean') { return specifierValue; }
- if (specifierValue && typeof specifierValue === 'object') {
- for (var i = 0; i < specifierValue.length; ++i) {
- if (matchesRange(specifierValue[i])) { return true; }
- }
- return false;
- }
- return matchesRange(specifierValue);
-}
-
-var data = require('./core.json');
-
-var core = {};
-for (var mod in data) { // eslint-disable-line no-restricted-syntax
- if (Object.prototype.hasOwnProperty.call(data, mod)) {
- core[mod] = versionIncluded(data[mod]);
- }
-}
-module.exports = core;
diff --git a/deps/npm/node_modules/resolve/lib/core.json b/deps/npm/node_modules/resolve/lib/core.json
deleted file mode 100644
index 0238b61a4c..0000000000
--- a/deps/npm/node_modules/resolve/lib/core.json
+++ /dev/null
@@ -1,83 +0,0 @@
-{
- "assert": true,
- "assert/strict": ">= 15",
- "async_hooks": ">= 8",
- "buffer_ieee754": "< 0.9.7",
- "buffer": true,
- "child_process": true,
- "cluster": true,
- "console": true,
- "constants": true,
- "crypto": true,
- "_debug_agent": ">= 1 && < 8",
- "_debugger": "< 8",
- "dgram": true,
- "diagnostics_channel": ">= 15.1",
- "dns": true,
- "dns/promises": ">= 15",
- "domain": ">= 0.7.12",
- "events": true,
- "freelist": "< 6",
- "fs": true,
- "fs/promises": [">= 10 && < 10.1", ">= 14"],
- "_http_agent": ">= 0.11.1",
- "_http_client": ">= 0.11.1",
- "_http_common": ">= 0.11.1",
- "_http_incoming": ">= 0.11.1",
- "_http_outgoing": ">= 0.11.1",
- "_http_server": ">= 0.11.1",
- "http": true,
- "http2": ">= 8.8",
- "https": true,
- "inspector": ">= 8.0.0",
- "_linklist": "< 8",
- "module": true,
- "net": true,
- "node-inspect/lib/_inspect": ">= 7.6.0 && < 12",
- "node-inspect/lib/internal/inspect_client": ">= 7.6.0 && < 12",
- "node-inspect/lib/internal/inspect_repl": ">= 7.6.0 && < 12",
- "os": true,
- "path": true,
- "path/posix": ">= 15.3",
- "path/win32": ">= 15.3",
- "perf_hooks": ">= 8.5",
- "process": ">= 1",
- "punycode": true,
- "querystring": true,
- "readline": true,
- "repl": true,
- "smalloc": ">= 0.11.5 && < 3",
- "_stream_duplex": ">= 0.9.4",
- "_stream_transform": ">= 0.9.4",
- "_stream_wrap": ">= 1.4.1",
- "_stream_passthrough": ">= 0.9.4",
- "_stream_readable": ">= 0.9.4",
- "_stream_writable": ">= 0.9.4",
- "stream": true,
- "stream/promises": ">= 15",
- "string_decoder": true,
- "sys": [">= 0.6 && < 0.7", ">= 0.8"],
- "timers": true,
- "timers/promises": ">= 15",
- "_tls_common": ">= 0.11.13",
- "_tls_legacy": ">= 0.11.3 && < 10",
- "_tls_wrap": ">= 0.11.3",
- "tls": true,
- "trace_events": ">= 10",
- "tty": true,
- "url": true,
- "util": true,
- "util/types": ">= 15.3",
- "v8/tools/arguments": ">= 10 && < 12",
- "v8/tools/codemap": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8/tools/consarray": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8/tools/csvparser": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8/tools/logreader": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8/tools/profile_view": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8/tools/splaytree": [">= 4.4.0 && < 5", ">= 5.2.0 && < 12"],
- "v8": ">= 1",
- "vm": true,
- "wasi": ">= 13.4 && < 13.5",
- "worker_threads": ">= 11.7",
- "zlib": true
-}
diff --git a/deps/npm/node_modules/resolve/lib/is-core.js b/deps/npm/node_modules/resolve/lib/is-core.js
deleted file mode 100644
index 537f5c782f..0000000000
--- a/deps/npm/node_modules/resolve/lib/is-core.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var isCoreModule = require('is-core-module');
-
-module.exports = function isCore(x) {
- return isCoreModule(x);
-};
diff --git a/deps/npm/node_modules/resolve/lib/node-modules-paths.js b/deps/npm/node_modules/resolve/lib/node-modules-paths.js
deleted file mode 100644
index 2b43813a7a..0000000000
--- a/deps/npm/node_modules/resolve/lib/node-modules-paths.js
+++ /dev/null
@@ -1,42 +0,0 @@
-var path = require('path');
-var parse = path.parse || require('path-parse');
-
-var getNodeModulesDirs = function getNodeModulesDirs(absoluteStart, modules) {
- var prefix = '/';
- if ((/^([A-Za-z]:)/).test(absoluteStart)) {
- prefix = '';
- } else if ((/^\\\\/).test(absoluteStart)) {
- prefix = '\\\\';
- }
-
- var paths = [absoluteStart];
- var parsed = parse(absoluteStart);
- while (parsed.dir !== paths[paths.length - 1]) {
- paths.push(parsed.dir);
- parsed = parse(parsed.dir);
- }
-
- return paths.reduce(function (dirs, aPath) {
- return dirs.concat(modules.map(function (moduleDir) {
- return path.resolve(prefix, aPath, moduleDir);
- }));
- }, []);
-};
-
-module.exports = function nodeModulesPaths(start, opts, request) {
- var modules = opts && opts.moduleDirectory
- ? [].concat(opts.moduleDirectory)
- : ['node_modules'];
-
- if (opts && typeof opts.paths === 'function') {
- return opts.paths(
- request,
- start,
- function () { return getNodeModulesDirs(start, modules); },
- opts
- );
- }
-
- var dirs = getNodeModulesDirs(start, modules);
- return opts && opts.paths ? dirs.concat(opts.paths) : dirs;
-};
diff --git a/deps/npm/node_modules/resolve/lib/normalize-options.js b/deps/npm/node_modules/resolve/lib/normalize-options.js
deleted file mode 100644
index 4b56904eae..0000000000
--- a/deps/npm/node_modules/resolve/lib/normalize-options.js
+++ /dev/null
@@ -1,10 +0,0 @@
-module.exports = function (x, opts) {
- /**
- * This file is purposefully a passthrough. It's expected that third-party
- * environments will override it at runtime in order to inject special logic
- * into `resolve` (by manipulating the options). One such example is the PnP
- * code path in Yarn.
- */
-
- return opts || {};
-};
diff --git a/deps/npm/node_modules/resolve/lib/sync.js b/deps/npm/node_modules/resolve/lib/sync.js
deleted file mode 100644
index ef9bd803ce..0000000000
--- a/deps/npm/node_modules/resolve/lib/sync.js
+++ /dev/null
@@ -1,199 +0,0 @@
-var isCore = require('is-core-module');
-var fs = require('fs');
-var path = require('path');
-var caller = require('./caller');
-var nodeModulesPaths = require('./node-modules-paths');
-var normalizeOptions = require('./normalize-options');
-
-var realpathFS = fs.realpathSync && typeof fs.realpathSync.native === 'function' ? fs.realpathSync.native : fs.realpathSync;
-
-var defaultIsFile = function isFile(file) {
- try {
- var stat = fs.statSync(file);
- } catch (e) {
- if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false;
- throw e;
- }
- return stat.isFile() || stat.isFIFO();
-};
-
-var defaultIsDir = function isDirectory(dir) {
- try {
- var stat = fs.statSync(dir);
- } catch (e) {
- if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false;
- throw e;
- }
- return stat.isDirectory();
-};
-
-var defaultRealpathSync = function realpathSync(x) {
- try {
- return realpathFS(x);
- } catch (realpathErr) {
- if (realpathErr.code !== 'ENOENT') {
- throw realpathErr;
- }
- }
- return x;
-};
-
-var maybeRealpathSync = function maybeRealpathSync(realpathSync, x, opts) {
- if (opts && opts.preserveSymlinks === false) {
- return realpathSync(x);
- }
- return x;
-};
-
-var defaultReadPackageSync = function defaultReadPackageSync(readFileSync, pkgfile) {
- var body = readFileSync(pkgfile);
- try {
- var pkg = JSON.parse(body);
- return pkg;
- } catch (jsonErr) {}
-};
-
-var getPackageCandidates = function getPackageCandidates(x, start, opts) {
- var dirs = nodeModulesPaths(start, opts, x);
- for (var i = 0; i < dirs.length; i++) {
- dirs[i] = path.join(dirs[i], x);
- }
- return dirs;
-};
-
-module.exports = function resolveSync(x, options) {
- if (typeof x !== 'string') {
- throw new TypeError('Path must be a string.');
- }
- var opts = normalizeOptions(x, options);
-
- var isFile = opts.isFile || defaultIsFile;
- var readFileSync = opts.readFileSync || fs.readFileSync;
- var isDirectory = opts.isDirectory || defaultIsDir;
- var realpathSync = opts.realpathSync || defaultRealpathSync;
- var readPackageSync = opts.readPackageSync || defaultReadPackageSync;
- if (opts.readFileSync && opts.readPackageSync) {
- throw new TypeError('`readFileSync` and `readPackageSync` are mutually exclusive.');
- }
- var packageIterator = opts.packageIterator;
-
- var extensions = opts.extensions || ['.js'];
- var includeCoreModules = opts.includeCoreModules !== false;
- var basedir = opts.basedir || path.dirname(caller());
- var parent = opts.filename || basedir;
-
- opts.paths = opts.paths || [];
-
- // ensure that `basedir` is an absolute path at this point, resolving against the process' current working directory
- var absoluteStart = maybeRealpathSync(realpathSync, path.resolve(basedir), opts);
-
- if ((/^(?:\.\.?(?:\/|$)|\/|([A-Za-z]:)?[/\\])/).test(x)) {
- var res = path.resolve(absoluteStart, x);
- if (x === '.' || x === '..' || x.slice(-1) === '/') res += '/';
- var m = loadAsFileSync(res) || loadAsDirectorySync(res);
- if (m) return maybeRealpathSync(realpathSync, m, opts);
- } else if (includeCoreModules && isCore(x)) {
- return x;
- } else {
- var n = loadNodeModulesSync(x, absoluteStart);
- if (n) return maybeRealpathSync(realpathSync, n, opts);
- }
-
- var err = new Error("Cannot find module '" + x + "' from '" + parent + "'");
- err.code = 'MODULE_NOT_FOUND';
- throw err;
-
- function loadAsFileSync(x) {
- var pkg = loadpkg(path.dirname(x));
-
- if (pkg && pkg.dir && pkg.pkg && opts.pathFilter) {
- var rfile = path.relative(pkg.dir, x);
- var r = opts.pathFilter(pkg.pkg, x, rfile);
- if (r) {
- x = path.resolve(pkg.dir, r); // eslint-disable-line no-param-reassign
- }
- }
-
- if (isFile(x)) {
- return x;
- }
-
- for (var i = 0; i < extensions.length; i++) {
- var file = x + extensions[i];
- if (isFile(file)) {
- return file;
- }
- }
- }
-
- function loadpkg(dir) {
- if (dir === '' || dir === '/') return;
- if (process.platform === 'win32' && (/^\w:[/\\]*$/).test(dir)) {
- return;
- }
- if ((/[/\\]node_modules[/\\]*$/).test(dir)) return;
-
- var pkgfile = path.join(maybeRealpathSync(realpathSync, dir, opts), 'package.json');
-
- if (!isFile(pkgfile)) {
- return loadpkg(path.dirname(dir));
- }
-
- var pkg = readPackageSync(readFileSync, pkgfile);
-
- if (pkg && opts.packageFilter) {
- // v2 will pass pkgfile
- pkg = opts.packageFilter(pkg, /*pkgfile,*/ dir); // eslint-disable-line spaced-comment
- }
-
- return { pkg: pkg, dir: dir };
- }
-
- function loadAsDirectorySync(x) {
- var pkgfile = path.join(maybeRealpathSync(realpathSync, x, opts), '/package.json');
- if (isFile(pkgfile)) {
- try {
- var pkg = readPackageSync(readFileSync, pkgfile);
- } catch (e) {}
-
- if (pkg && opts.packageFilter) {
- // v2 will pass pkgfile
- pkg = opts.packageFilter(pkg, /*pkgfile,*/ x); // eslint-disable-line spaced-comment
- }
-
- if (pkg && pkg.main) {
- if (typeof pkg.main !== 'string') {
- var mainError = new TypeError('package “' + pkg.name + '” `main` must be a string');
- mainError.code = 'INVALID_PACKAGE_MAIN';
- throw mainError;
- }
- if (pkg.main === '.' || pkg.main === './') {
- pkg.main = 'index';
- }
- try {
- var m = loadAsFileSync(path.resolve(x, pkg.main));
- if (m) return m;
- var n = loadAsDirectorySync(path.resolve(x, pkg.main));
- if (n) return n;
- } catch (e) {}
- }
- }
-
- return loadAsFileSync(path.join(x, '/index'));
- }
-
- function loadNodeModulesSync(x, start) {
- var thunk = function () { return getPackageCandidates(x, start, opts); };
- var dirs = packageIterator ? packageIterator(x, start, thunk, opts) : thunk();
-
- for (var i = 0; i < dirs.length; i++) {
- var dir = dirs[i];
- if (isDirectory(path.dirname(dir))) {
- var m = loadAsFileSync(dir);
- if (m) return m;
- var n = loadAsDirectorySync(dir);
- if (n) return n;
- }
- }
- }
-};
diff --git a/deps/npm/node_modules/resolve/package.json b/deps/npm/node_modules/resolve/package.json
deleted file mode 100644
index 52a78a2338..0000000000
--- a/deps/npm/node_modules/resolve/package.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "name": "resolve",
- "description": "resolve like require.resolve() on behalf of files asynchronously and synchronously",
- "version": "1.20.0",
- "repository": {
- "type": "git",
- "url": "git://github.com/browserify/resolve.git"
- },
- "main": "index.js",
- "keywords": [
- "resolve",
- "require",
- "node",
- "module"
- ],
- "scripts": {
- "prepublish": "safe-publish-latest && cp node_modules/is-core-module/core.json ./lib/ ||:",
- "prelint": "eclint check '**/*'",
- "lint": "eslint --ext=js,mjs .",
- "pretests-only": "cd ./test/resolver/nested_symlinks && node mylib/sync && node mylib/async",
- "tests-only": "tape test/*.js",
- "pretest": "npm run lint",
- "test": "npm run --silent tests-only",
- "posttest": "npm run test:multirepo && aud --production",
- "test:multirepo": "cd ./test/resolver/multirepo && npm install && npm test"
- },
- "devDependencies": {
- "@ljharb/eslint-config": "^17.5.1",
- "array.prototype.map": "^1.0.3",
- "aud": "^1.1.4",
- "eclint": "^2.8.1",
- "eslint": "^7.19.0",
- "object-keys": "^1.1.1",
- "safe-publish-latest": "^1.1.4",
- "tap": "0.4.13",
- "tape": "^5.1.1"
- },
- "license": "MIT",
- "author": {
- "name": "James Halliday",
- "email": "mail@substack.net",
- "url": "http://substack.net"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- },
- "dependencies": {
- "is-core-module": "^2.2.0",
- "path-parse": "^1.0.6"
- }
-}
diff --git a/deps/npm/node_modules/resolve/readme.markdown b/deps/npm/node_modules/resolve/readme.markdown
deleted file mode 100644
index 7c9f2dcd53..0000000000
--- a/deps/npm/node_modules/resolve/readme.markdown
+++ /dev/null
@@ -1,279 +0,0 @@
-# resolve
-
-implements the [node `require.resolve()`
-algorithm](https://nodejs.org/api/modules.html#modules_all_together)
-such that you can `require.resolve()` on behalf of a file asynchronously and
-synchronously
-
-[![build status](https://secure.travis-ci.org/browserify/resolve.png)](http://travis-ci.org/browserify/resolve)
-
-# example
-
-asynchronously resolve:
-
-```js
-var resolve = require('resolve');
-resolve('tap', { basedir: __dirname }, function (err, res) {
- if (err) console.error(err);
- else console.log(res);
-});
-```
-
-```
-$ node example/async.js
-/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
-```
-
-synchronously resolve:
-
-```js
-var resolve = require('resolve');
-var res = resolve.sync('tap', { basedir: __dirname });
-console.log(res);
-```
-
-```
-$ node example/sync.js
-/home/substack/projects/node-resolve/node_modules/tap/lib/main.js
-```
-
-# methods
-
-```js
-var resolve = require('resolve');
-```
-
-For both the synchronous and asynchronous methods, errors may have any of the following `err.code` values:
-
-- `MODULE_NOT_FOUND`: the given path string (`id`) could not be resolved to a module
-- `INVALID_BASEDIR`: the specified `opts.basedir` doesn't exist, or is not a directory
-- `INVALID_PACKAGE_MAIN`: a `package.json` was encountered with an invalid `main` property (eg. not a string)
-
-## resolve(id, opts={}, cb)
-
-Asynchronously resolve the module path string `id` into `cb(err, res [, pkg])`, where `pkg` (if defined) is the data from `package.json`.
-
-options are:
-
-* opts.basedir - directory to begin resolving from
-
-* opts.package - `package.json` data applicable to the module being loaded
-
-* opts.extensions - array of file extensions to search in order
-
-* opts.includeCoreModules - set to `false` to exclude node core modules (e.g. `fs`) from the search
-
-* opts.readFile - how to read files asynchronously
-
-* opts.isFile - function to asynchronously test whether a file exists
-
-* opts.isDirectory - function to asynchronously test whether a directory exists
-
-* opts.realpath - function to asynchronously resolve a potential symlink to its real path
-
-* `opts.readPackage(readFile, pkgfile, cb)` - function to asynchronously read and parse a package.json file
- * readFile - the passed `opts.readFile` or `fs.readFile` if not specified
- * pkgfile - path to package.json
- * cb - callback
-
-* `opts.packageFilter(pkg, pkgfile, dir)` - transform the parsed package.json contents before looking at the "main" field
- * pkg - package data
- * pkgfile - path to package.json
- * dir - directory for package.json
-
-* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package
- * pkg - package data
- * path - the path being resolved
- * relativePath - the path relative from the package.json location
- * returns - a relative path that will be joined from the package.json location
-
-* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this)
-
- For advanced users, `paths` can also be a `opts.paths(request, start, opts)` function
- * request - the import specifier being resolved
- * start - lookup path
- * getNodeModulesDirs - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution
- * opts - the resolution options
-
-* `opts.packageIterator(request, start, opts)` - return the list of candidate paths where the packages sources may be found (probably don't use this)
- * request - the import specifier being resolved
- * start - lookup path
- * getPackageCandidates - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution
- * opts - the resolution options
-
-* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
-
-* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving.
-This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag.
-**Note:** this property is currently `true` by default but it will be changed to
-`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*.
-
-default `opts` values:
-
-```js
-{
- paths: [],
- basedir: __dirname,
- extensions: ['.js'],
- includeCoreModules: true,
- readFile: fs.readFile,
- isFile: function isFile(file, cb) {
- fs.stat(file, function (err, stat) {
- if (!err) {
- return cb(null, stat.isFile() || stat.isFIFO());
- }
- if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
- return cb(err);
- });
- },
- isDirectory: function isDirectory(dir, cb) {
- fs.stat(dir, function (err, stat) {
- if (!err) {
- return cb(null, stat.isDirectory());
- }
- if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
- return cb(err);
- });
- },
- realpath: function realpath(file, cb) {
- var realpath = typeof fs.realpath.native === 'function' ? fs.realpath.native : fs.realpath;
- realpath(file, function (realPathErr, realPath) {
- if (realPathErr && realPathErr.code !== 'ENOENT') cb(realPathErr);
- else cb(null, realPathErr ? file : realPath);
- });
- },
- readPackage: function defaultReadPackage(readFile, pkgfile, cb) {
- readFile(pkgfile, function (readFileErr, body) {
- if (readFileErr) cb(readFileErr);
- else {
- try {
- var pkg = JSON.parse(body);
- cb(null, pkg);
- } catch (jsonErr) {
- cb(null);
- }
- }
- });
- },
- moduleDirectory: 'node_modules',
- preserveSymlinks: true
-}
-```
-
-## resolve.sync(id, opts)
-
-Synchronously resolve the module path string `id`, returning the result and
-throwing an error when `id` can't be resolved.
-
-options are:
-
-* opts.basedir - directory to begin resolving from
-
-* opts.extensions - array of file extensions to search in order
-
-* opts.includeCoreModules - set to `false` to exclude node core modules (e.g. `fs`) from the search
-
-* opts.readFileSync - how to read files synchronously
-
-* opts.isFile - function to synchronously test whether a file exists
-
-* opts.isDirectory - function to synchronously test whether a directory exists
-
-* opts.realpathSync - function to synchronously resolve a potential symlink to its real path
-
-* `opts.readPackageSync(readFileSync, pkgfile)` - function to synchronously read and parse a package.json file
- * readFileSync - the passed `opts.readFileSync` or `fs.readFileSync` if not specified
- * pkgfile - path to package.json
-
-* `opts.packageFilter(pkg, dir)` - transform the parsed package.json contents before looking at the "main" field
- * pkg - package data
- * dir - directory for package.json (Note: the second argument will change to "pkgfile" in v2)
-
-* `opts.pathFilter(pkg, path, relativePath)` - transform a path within a package
- * pkg - package data
- * path - the path being resolved
- * relativePath - the path relative from the package.json location
- * returns - a relative path that will be joined from the package.json location
-
-* opts.paths - require.paths array to use if nothing is found on the normal `node_modules` recursive walk (probably don't use this)
-
- For advanced users, `paths` can also be a `opts.paths(request, start, opts)` function
- * request - the import specifier being resolved
- * start - lookup path
- * getNodeModulesDirs - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution
- * opts - the resolution options
-
-* `opts.packageIterator(request, start, opts)` - return the list of candidate paths where the packages sources may be found (probably don't use this)
- * request - the import specifier being resolved
- * start - lookup path
- * getPackageCandidates - a thunk (no-argument function) that returns the paths using standard `node_modules` resolution
- * opts - the resolution options
-
-* opts.moduleDirectory - directory (or directories) in which to recursively look for modules. default: `"node_modules"`
-
-* opts.preserveSymlinks - if true, doesn't resolve `basedir` to real path before resolving.
-This is the way Node resolves dependencies when executed with the [--preserve-symlinks](https://nodejs.org/api/all.html#cli_preserve_symlinks) flag.
-**Note:** this property is currently `true` by default but it will be changed to
-`false` in the next major version because *Node's resolution algorithm does not preserve symlinks by default*.
-
-default `opts` values:
-
-```js
-{
- paths: [],
- basedir: __dirname,
- extensions: ['.js'],
- includeCoreModules: true,
- readFileSync: fs.readFileSync,
- isFile: function isFile(file) {
- try {
- var stat = fs.statSync(file);
- } catch (e) {
- if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false;
- throw e;
- }
- return stat.isFile() || stat.isFIFO();
- },
- isDirectory: function isDirectory(dir) {
- try {
- var stat = fs.statSync(dir);
- } catch (e) {
- if (e && (e.code === 'ENOENT' || e.code === 'ENOTDIR')) return false;
- throw e;
- }
- return stat.isDirectory();
- },
- realpathSync: function realpathSync(file) {
- try {
- var realpath = typeof fs.realpathSync.native === 'function' ? fs.realpathSync.native : fs.realpathSync;
- return realpath(file);
- } catch (realPathErr) {
- if (realPathErr.code !== 'ENOENT') {
- throw realPathErr;
- }
- }
- return file;
- },
- readPackageSync: function defaultReadPackageSync(readFileSync, pkgfile) {
- var body = readFileSync(pkgfile);
- try {
- var pkg = JSON.parse(body);
- return pkg;
- } catch (jsonErr) {}
- },
- moduleDirectory: 'node_modules',
- preserveSymlinks: true
-}
-```
-
-# install
-
-With [npm](https://npmjs.org) do:
-
-```sh
-npm install resolve
-```
-
-# license
-
-MIT
diff --git a/deps/npm/node_modules/resolve/test/core.js b/deps/npm/node_modules/resolve/test/core.js
deleted file mode 100644
index 7a3ccb16b4..0000000000
--- a/deps/npm/node_modules/resolve/test/core.js
+++ /dev/null
@@ -1,81 +0,0 @@
-var test = require('tape');
-var keys = require('object-keys');
-var resolve = require('../');
-
-test('core modules', function (t) {
- t.test('isCore()', function (st) {
- st.ok(resolve.isCore('fs'));
- st.ok(resolve.isCore('net'));
- st.ok(resolve.isCore('http'));
-
- st.ok(!resolve.isCore('seq'));
- st.ok(!resolve.isCore('../'));
-
- st.ok(!resolve.isCore('toString'));
-
- st.end();
- });
-
- t.test('core list', function (st) {
- var cores = keys(resolve.core);
- st.plan(cores.length);
-
- for (var i = 0; i < cores.length; ++i) {
- var mod = cores[i];
- var requireFunc = function () { require(mod); }; // eslint-disable-line no-loop-func
- console.log(mod, resolve.core, resolve.core[mod]);
- if (resolve.core[mod]) {
- st.doesNotThrow(requireFunc, mod + ' supported; requiring does not throw');
- } else {
- st.throws(requireFunc, mod + ' not supported; requiring throws');
- }
- }
-
- st.end();
- });
-
- t.test('core via repl module', { skip: !resolve.core.repl }, function (st) {
- var libs = require('repl')._builtinLibs; // eslint-disable-line no-underscore-dangle
- if (!libs) {
- st.skip('module.builtinModules does not exist');
- return st.end();
- }
- for (var i = 0; i < libs.length; ++i) {
- var mod = libs[i];
- st.ok(resolve.core[mod], mod + ' is a core module');
- st.doesNotThrow(
- function () { require(mod); }, // eslint-disable-line no-loop-func
- 'requiring ' + mod + ' does not throw'
- );
- }
- st.end();
- });
-
- t.test('core via builtinModules list', { skip: !resolve.core.module }, function (st) {
- var libs = require('module').builtinModules;
- if (!libs) {
- st.skip('module.builtinModules does not exist');
- return st.end();
- }
- var blacklist = [
- '_debug_agent',
- 'v8/tools/tickprocessor-driver',
- 'v8/tools/SourceMap',
- 'v8/tools/tickprocessor',
- 'v8/tools/profile'
- ];
- for (var i = 0; i < libs.length; ++i) {
- var mod = libs[i];
- if (blacklist.indexOf(mod) === -1) {
- st.ok(resolve.core[mod], mod + ' is a core module');
- st.doesNotThrow(
- function () { require(mod); }, // eslint-disable-line no-loop-func
- 'requiring ' + mod + ' does not throw'
- );
- }
- }
- st.end();
- });
-
- t.end();
-});
diff --git a/deps/npm/node_modules/resolve/test/dotdot.js b/deps/npm/node_modules/resolve/test/dotdot.js
deleted file mode 100644
index 30806659be..0000000000
--- a/deps/npm/node_modules/resolve/test/dotdot.js
+++ /dev/null
@@ -1,29 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('dotdot', function (t) {
- t.plan(4);
- var dir = path.join(__dirname, '/dotdot/abc');
-
- resolve('..', { basedir: dir }, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(__dirname, 'dotdot/index.js'));
- });
-
- resolve('.', { basedir: dir }, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, 'index.js'));
- });
-});
-
-test('dotdot sync', function (t) {
- t.plan(2);
- var dir = path.join(__dirname, '/dotdot/abc');
-
- var a = resolve.sync('..', { basedir: dir });
- t.equal(a, path.join(__dirname, 'dotdot/index.js'));
-
- var b = resolve.sync('.', { basedir: dir });
- t.equal(b, path.join(dir, 'index.js'));
-});
diff --git a/deps/npm/node_modules/resolve/test/dotdot/abc/index.js b/deps/npm/node_modules/resolve/test/dotdot/abc/index.js
deleted file mode 100644
index 67f2534ebf..0000000000
--- a/deps/npm/node_modules/resolve/test/dotdot/abc/index.js
+++ /dev/null
@@ -1,2 +0,0 @@
-var x = require('..');
-console.log(x);
diff --git a/deps/npm/node_modules/resolve/test/dotdot/index.js b/deps/npm/node_modules/resolve/test/dotdot/index.js
deleted file mode 100644
index 643f9fcc6a..0000000000
--- a/deps/npm/node_modules/resolve/test/dotdot/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'whatever';
diff --git a/deps/npm/node_modules/resolve/test/faulty_basedir.js b/deps/npm/node_modules/resolve/test/faulty_basedir.js
deleted file mode 100644
index 5f2141a672..0000000000
--- a/deps/npm/node_modules/resolve/test/faulty_basedir.js
+++ /dev/null
@@ -1,29 +0,0 @@
-var test = require('tape');
-var path = require('path');
-var resolve = require('../');
-
-test('faulty basedir must produce error in windows', { skip: process.platform !== 'win32' }, function (t) {
- t.plan(1);
-
- var resolverDir = 'C:\\a\\b\\c\\d';
-
- resolve('tape/lib/test.js', { basedir: resolverDir }, function (err, res, pkg) {
- t.equal(!!err, true);
- });
-});
-
-test('non-existent basedir should not throw when preserveSymlinks is false', function (t) {
- t.plan(2);
-
- var opts = {
- basedir: path.join(path.sep, 'unreal', 'path', 'that', 'does', 'not', 'exist'),
- preserveSymlinks: false
- };
-
- var module = './dotdot/abc';
-
- resolve(module, opts, function (err, res) {
- t.equal(err.code, 'MODULE_NOT_FOUND');
- t.equal(res, undefined);
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/filter.js b/deps/npm/node_modules/resolve/test/filter.js
deleted file mode 100644
index 8f8cccdb2f..0000000000
--- a/deps/npm/node_modules/resolve/test/filter.js
+++ /dev/null
@@ -1,34 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('filter', function (t) {
- t.plan(4);
- var dir = path.join(__dirname, 'resolver');
- var packageFilterArgs;
- resolve('./baz', {
- basedir: dir,
- packageFilter: function (pkg, pkgfile) {
- pkg.main = 'doom'; // eslint-disable-line no-param-reassign
- packageFilterArgs = [pkg, pkgfile];
- return pkg;
- }
- }, function (err, res, pkg) {
- if (err) t.fail(err);
-
- t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works');
-
- var packageData = packageFilterArgs[0];
- t.equal(pkg, packageData, 'first packageFilter argument is "pkg"');
- t.equal(packageData.main, 'doom', 'package "main" was altered');
-
- var packageFile = packageFilterArgs[1];
- t.equal(
- packageFile,
- path.join(dir, 'baz/package.json'),
- 'second packageFilter argument is "pkgfile"'
- );
-
- t.end();
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/filter_sync.js b/deps/npm/node_modules/resolve/test/filter_sync.js
deleted file mode 100644
index 8a43b98189..0000000000
--- a/deps/npm/node_modules/resolve/test/filter_sync.js
+++ /dev/null
@@ -1,33 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('filter', function (t) {
- var dir = path.join(__dirname, 'resolver');
- var packageFilterArgs;
- var res = resolve.sync('./baz', {
- basedir: dir,
- // NOTE: in v2.x, this will be `pkg, pkgfile, dir`, but must remain "broken" here in v1.x for compatibility
- packageFilter: function (pkg, /*pkgfile,*/ dir) { // eslint-disable-line spaced-comment
- pkg.main = 'doom'; // eslint-disable-line no-param-reassign
- packageFilterArgs = 'is 1.x' ? [pkg, dir] : [pkg, pkgfile, dir]; // eslint-disable-line no-constant-condition, no-undef
- return pkg;
- }
- });
-
- t.equal(res, path.join(dir, 'baz/doom.js'), 'changing the package "main" works');
-
- var packageData = packageFilterArgs[0];
- t.equal(packageData.main, 'doom', 'package "main" was altered');
-
- if (!'is 1.x') { // eslint-disable-line no-constant-condition
- var packageFile = packageFilterArgs[1];
- t.equal(packageFile, path.join(dir, 'baz', 'package.json'), 'package.json path is correct');
- }
-
- var packageDir = packageFilterArgs['is 1.x' ? 1 : 2]; // eslint-disable-line no-constant-condition
- // eslint-disable-next-line no-constant-condition
- t.equal(packageDir, path.join(dir, 'baz'), ('is 1.x' ? 'second' : 'third') + ' packageFilter argument is "dir"');
-
- t.end();
-});
diff --git a/deps/npm/node_modules/resolve/test/mock.js b/deps/npm/node_modules/resolve/test/mock.js
deleted file mode 100644
index 6116275498..0000000000
--- a/deps/npm/node_modules/resolve/test/mock.js
+++ /dev/null
@@ -1,315 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('mock', function (t) {
- t.plan(8);
-
- var files = {};
- files[path.resolve('/foo/bar/baz.js')] = 'beep';
-
- var dirs = {};
- dirs[path.resolve('/foo/bar')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- readFile: function (file, cb) {
- cb(null, files[path.resolve(file)]);
- },
- realpath: function (file, cb) {
- cb(null, file);
- }
- };
- }
-
- resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/baz.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/baz.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('baz', opts('/foo/bar'), function (err, res) {
- t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-
- resolve('../baz', opts('/foo/bar'), function (err, res) {
- t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-});
-
-test('mock from package', function (t) {
- t.plan(8);
-
- var files = {};
- files[path.resolve('/foo/bar/baz.js')] = 'beep';
-
- var dirs = {};
- dirs[path.resolve('/foo/bar')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, file));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- 'package': { main: 'bar' },
- readFile: function (file, cb) {
- cb(null, files[file]);
- },
- realpath: function (file, cb) {
- cb(null, file);
- }
- };
- }
-
- resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/baz.js'));
- t.equal(pkg && pkg.main, 'bar');
- });
-
- resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/baz.js'));
- t.equal(pkg && pkg.main, 'bar');
- });
-
- resolve('baz', opts('/foo/bar'), function (err, res) {
- t.equal(err.message, "Cannot find module 'baz' from '" + path.resolve('/foo/bar') + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-
- resolve('../baz', opts('/foo/bar'), function (err, res) {
- t.equal(err.message, "Cannot find module '../baz' from '" + path.resolve('/foo/bar') + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-});
-
-test('mock package', function (t) {
- t.plan(2);
-
- var files = {};
- files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
- files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
- main: './baz.js'
- });
-
- var dirs = {};
- dirs[path.resolve('/foo')] = true;
- dirs[path.resolve('/foo/node_modules')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- readFile: function (file, cb) {
- cb(null, files[path.resolve(file)]);
- },
- realpath: function (file, cb) {
- cb(null, file);
- }
- };
- }
-
- resolve('bar', opts('/foo'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/node_modules/bar/baz.js'));
- t.equal(pkg && pkg.main, './baz.js');
- });
-});
-
-test('mock package from package', function (t) {
- t.plan(2);
-
- var files = {};
- files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
- files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
- main: './baz.js'
- });
-
- var dirs = {};
- dirs[path.resolve('/foo')] = true;
- dirs[path.resolve('/foo/node_modules')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- 'package': { main: 'bar' },
- readFile: function (file, cb) {
- cb(null, files[path.resolve(file)]);
- },
- realpath: function (file, cb) {
- cb(null, file);
- }
- };
- }
-
- resolve('bar', opts('/foo'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/node_modules/bar/baz.js'));
- t.equal(pkg && pkg.main, './baz.js');
- });
-});
-
-test('symlinked', function (t) {
- t.plan(4);
-
- var files = {};
- files[path.resolve('/foo/bar/baz.js')] = 'beep';
- files[path.resolve('/foo/bar/symlinked/baz.js')] = 'beep';
-
- var dirs = {};
- dirs[path.resolve('/foo/bar')] = true;
- dirs[path.resolve('/foo/bar/symlinked')] = true;
-
- function opts(basedir) {
- return {
- preserveSymlinks: false,
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- readFile: function (file, cb) {
- cb(null, files[path.resolve(file)]);
- },
- realpath: function (file, cb) {
- var resolved = path.resolve(file);
-
- if (resolved.indexOf('symlinked') >= 0) {
- cb(null, resolved);
- return;
- }
-
- var ext = path.extname(resolved);
-
- if (ext) {
- var dir = path.dirname(resolved);
- var base = path.basename(resolved);
- cb(null, path.join(dir, 'symlinked', base));
- } else {
- cb(null, path.join(resolved, 'symlinked'));
- }
- }
- };
- }
-
- resolve('./baz', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/symlinked/baz.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('./baz.js', opts('/foo/bar'), function (err, res, pkg) {
- if (err) return t.fail(err);
- t.equal(res, path.resolve('/foo/bar/symlinked/baz.js'));
- t.equal(pkg, undefined);
- });
-});
-
-test('readPackage', function (t) {
- t.plan(3);
-
- var files = {};
- files[path.resolve('/foo/node_modules/bar/something-else.js')] = 'beep';
- files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
- main: './baz.js'
- });
- files[path.resolve('/foo/node_modules/bar/baz.js')] = 'boop';
-
- var dirs = {};
- dirs[path.resolve('/foo')] = true;
- dirs[path.resolve('/foo/node_modules')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file, cb) {
- cb(null, Object.prototype.hasOwnProperty.call(files, path.resolve(file)));
- },
- isDirectory: function (dir, cb) {
- cb(null, !!dirs[path.resolve(dir)]);
- },
- 'package': { main: 'bar' },
- readFile: function (file, cb) {
- cb(null, files[path.resolve(file)]);
- },
- realpath: function (file, cb) {
- cb(null, file);
- }
- };
- }
-
- t.test('with readFile', function (st) {
- st.plan(3);
-
- resolve('bar', opts('/foo'), function (err, res, pkg) {
- st.error(err);
- st.equal(res, path.resolve('/foo/node_modules/bar/baz.js'));
- st.equal(pkg && pkg.main, './baz.js');
- });
- });
-
- var readPackage = function (readFile, file, cb) {
- var barPackage = path.join('bar', 'package.json');
- if (file.slice(-barPackage.length) === barPackage) {
- cb(null, { main: './something-else.js' });
- } else {
- cb(null, JSON.parse(files[path.resolve(file)]));
- }
- };
-
- t.test('with readPackage', function (st) {
- st.plan(3);
-
- var options = opts('/foo');
- delete options.readFile;
- options.readPackage = readPackage;
- resolve('bar', options, function (err, res, pkg) {
- st.error(err);
- st.equal(res, path.resolve('/foo/node_modules/bar/something-else.js'));
- st.equal(pkg && pkg.main, './something-else.js');
- });
- });
-
- t.test('with readFile and readPackage', function (st) {
- st.plan(1);
-
- var options = opts('/foo');
- options.readPackage = readPackage;
- resolve('bar', options, function (err) {
- st.throws(function () { throw err; }, TypeError, 'errors when both readFile and readPackage are provided');
- });
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/mock_sync.js b/deps/npm/node_modules/resolve/test/mock_sync.js
deleted file mode 100644
index 0e3a60d441..0000000000
--- a/deps/npm/node_modules/resolve/test/mock_sync.js
+++ /dev/null
@@ -1,216 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('mock', function (t) {
- t.plan(4);
-
- var files = {};
- files[path.resolve('/foo/bar/baz.js')] = 'beep';
-
- var dirs = {};
- dirs[path.resolve('/foo/bar')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file) {
- return Object.prototype.hasOwnProperty.call(files, path.resolve(file));
- },
- isDirectory: function (dir) {
- return !!dirs[path.resolve(dir)];
- },
- readFileSync: function (file) {
- return files[path.resolve(file)];
- },
- realpathSync: function (file) {
- return file;
- }
- };
- }
-
- t.equal(
- resolve.sync('./baz', opts('/foo/bar')),
- path.resolve('/foo/bar/baz.js')
- );
-
- t.equal(
- resolve.sync('./baz.js', opts('/foo/bar')),
- path.resolve('/foo/bar/baz.js')
- );
-
- t.throws(function () {
- resolve.sync('baz', opts('/foo/bar'));
- });
-
- t.throws(function () {
- resolve.sync('../baz', opts('/foo/bar'));
- });
-});
-
-test('mock package', function (t) {
- t.plan(1);
-
- var files = {};
- files[path.resolve('/foo/node_modules/bar/baz.js')] = 'beep';
- files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
- main: './baz.js'
- });
-
- var dirs = {};
- dirs[path.resolve('/foo')] = true;
- dirs[path.resolve('/foo/node_modules')] = true;
-
- function opts(basedir) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file) {
- return Object.prototype.hasOwnProperty.call(files, path.resolve(file));
- },
- isDirectory: function (dir) {
- return !!dirs[path.resolve(dir)];
- },
- readFileSync: function (file) {
- return files[path.resolve(file)];
- },
- realpathSync: function (file) {
- return file;
- }
- };
- }
-
- t.equal(
- resolve.sync('bar', opts('/foo')),
- path.resolve('/foo/node_modules/bar/baz.js')
- );
-});
-
-test('symlinked', function (t) {
- t.plan(2);
-
- var files = {};
- files[path.resolve('/foo/bar/baz.js')] = 'beep';
- files[path.resolve('/foo/bar/symlinked/baz.js')] = 'beep';
-
- var dirs = {};
- dirs[path.resolve('/foo/bar')] = true;
- dirs[path.resolve('/foo/bar/symlinked')] = true;
-
- function opts(basedir) {
- return {
- preserveSymlinks: false,
- basedir: path.resolve(basedir),
- isFile: function (file) {
- return Object.prototype.hasOwnProperty.call(files, path.resolve(file));
- },
- isDirectory: function (dir) {
- return !!dirs[path.resolve(dir)];
- },
- readFileSync: function (file) {
- return files[path.resolve(file)];
- },
- realpathSync: function (file) {
- var resolved = path.resolve(file);
-
- if (resolved.indexOf('symlinked') >= 0) {
- return resolved;
- }
-
- var ext = path.extname(resolved);
-
- if (ext) {
- var dir = path.dirname(resolved);
- var base = path.basename(resolved);
- return path.join(dir, 'symlinked', base);
- } else {
- return path.join(resolved, 'symlinked');
- }
- }
- };
- }
-
- t.equal(
- resolve.sync('./baz', opts('/foo/bar')),
- path.resolve('/foo/bar/symlinked/baz.js')
- );
-
- t.equal(
- resolve.sync('./baz.js', opts('/foo/bar')),
- path.resolve('/foo/bar/symlinked/baz.js')
- );
-});
-
-test('readPackageSync', function (t) {
- t.plan(3);
-
- var files = {};
- files[path.resolve('/foo/node_modules/bar/something-else.js')] = 'beep';
- files[path.resolve('/foo/node_modules/bar/package.json')] = JSON.stringify({
- main: './baz.js'
- });
- files[path.resolve('/foo/node_modules/bar/baz.js')] = 'boop';
-
- var dirs = {};
- dirs[path.resolve('/foo')] = true;
- dirs[path.resolve('/foo/node_modules')] = true;
-
- function opts(basedir, useReadPackage) {
- return {
- basedir: path.resolve(basedir),
- isFile: function (file) {
- return Object.prototype.hasOwnProperty.call(files, path.resolve(file));
- },
- isDirectory: function (dir) {
- return !!dirs[path.resolve(dir)];
- },
- readFileSync: useReadPackage ? null : function (file) {
- return files[path.resolve(file)];
- },
- realpathSync: function (file) {
- return file;
- }
- };
- }
- t.test('with readFile', function (st) {
- st.plan(1);
-
- st.equal(
- resolve.sync('bar', opts('/foo')),
- path.resolve('/foo/node_modules/bar/baz.js')
- );
- });
-
- var readPackageSync = function (readFileSync, file) {
- if (file.indexOf(path.join('bar', 'package.json')) >= 0) {
- return { main: './something-else.js' };
- } else {
- return JSON.parse(files[path.resolve(file)]);
- }
- };
-
- t.test('with readPackage', function (st) {
- st.plan(1);
-
- var options = opts('/foo');
- delete options.readFileSync;
- options.readPackageSync = readPackageSync;
-
- st.equal(
- resolve.sync('bar', options),
- path.resolve('/foo/node_modules/bar/something-else.js')
- );
- });
-
- t.test('with readFile and readPackage', function (st) {
- st.plan(1);
-
- var options = opts('/foo');
- options.readPackageSync = readPackageSync;
- st.throws(
- function () { resolve.sync('bar', options); },
- TypeError,
- 'errors when both readFile and readPackage are provided'
- );
- });
-});
-
diff --git a/deps/npm/node_modules/resolve/test/module_dir.js b/deps/npm/node_modules/resolve/test/module_dir.js
deleted file mode 100644
index b50e5bb175..0000000000
--- a/deps/npm/node_modules/resolve/test/module_dir.js
+++ /dev/null
@@ -1,56 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('moduleDirectory strings', function (t) {
- t.plan(4);
- var dir = path.join(__dirname, 'module_dir');
- var xopts = {
- basedir: dir,
- moduleDirectory: 'xmodules'
- };
- resolve('aaa', xopts, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, '/xmodules/aaa/index.js'));
- });
-
- var yopts = {
- basedir: dir,
- moduleDirectory: 'ymodules'
- };
- resolve('aaa', yopts, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, '/ymodules/aaa/index.js'));
- });
-});
-
-test('moduleDirectory array', function (t) {
- t.plan(6);
- var dir = path.join(__dirname, 'module_dir');
- var aopts = {
- basedir: dir,
- moduleDirectory: ['xmodules', 'ymodules', 'zmodules']
- };
- resolve('aaa', aopts, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, '/xmodules/aaa/index.js'));
- });
-
- var bopts = {
- basedir: dir,
- moduleDirectory: ['zmodules', 'ymodules', 'xmodules']
- };
- resolve('aaa', bopts, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, '/ymodules/aaa/index.js'));
- });
-
- var copts = {
- basedir: dir,
- moduleDirectory: ['xmodules', 'ymodules', 'zmodules']
- };
- resolve('bbb', copts, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, '/zmodules/bbb/main.js'));
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/module_dir/xmodules/aaa/index.js b/deps/npm/node_modules/resolve/test/module_dir/xmodules/aaa/index.js
deleted file mode 100644
index dd7cf7b2d0..0000000000
--- a/deps/npm/node_modules/resolve/test/module_dir/xmodules/aaa/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (x) { return x * 100; };
diff --git a/deps/npm/node_modules/resolve/test/module_dir/ymodules/aaa/index.js b/deps/npm/node_modules/resolve/test/module_dir/ymodules/aaa/index.js
deleted file mode 100644
index ef2d4d4bf7..0000000000
--- a/deps/npm/node_modules/resolve/test/module_dir/ymodules/aaa/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (x) { return x + 100; };
diff --git a/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/main.js b/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/main.js
deleted file mode 100644
index e8ba629936..0000000000
--- a/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/main.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = function (n) { return n * 111; };
diff --git a/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/package.json b/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/package.json
deleted file mode 100644
index c13b8cf6ac..0000000000
--- a/deps/npm/node_modules/resolve/test/module_dir/zmodules/bbb/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "main": "main.js"
-}
diff --git a/deps/npm/node_modules/resolve/test/node-modules-paths.js b/deps/npm/node_modules/resolve/test/node-modules-paths.js
deleted file mode 100644
index 675441db2c..0000000000
--- a/deps/npm/node_modules/resolve/test/node-modules-paths.js
+++ /dev/null
@@ -1,143 +0,0 @@
-var test = require('tape');
-var path = require('path');
-var parse = path.parse || require('path-parse');
-var keys = require('object-keys');
-
-var nodeModulesPaths = require('../lib/node-modules-paths');
-
-var verifyDirs = function verifyDirs(t, start, dirs, moduleDirectories, paths) {
- var moduleDirs = [].concat(moduleDirectories || 'node_modules');
- if (paths) {
- for (var k = 0; k < paths.length; ++k) {
- moduleDirs.push(path.basename(paths[k]));
- }
- }
-
- var foundModuleDirs = {};
- var uniqueDirs = {};
- var parsedDirs = {};
- for (var i = 0; i < dirs.length; ++i) {
- var parsed = parse(dirs[i]);
- if (!foundModuleDirs[parsed.base]) { foundModuleDirs[parsed.base] = 0; }
- foundModuleDirs[parsed.base] += 1;
- parsedDirs[parsed.dir] = true;
- uniqueDirs[dirs[i]] = true;
- }
- t.equal(keys(parsedDirs).length >= start.split(path.sep).length, true, 'there are >= dirs than "start" has');
- var foundModuleDirNames = keys(foundModuleDirs);
- t.deepEqual(foundModuleDirNames, moduleDirs, 'all desired module dirs were found');
- t.equal(keys(uniqueDirs).length, dirs.length, 'all dirs provided were unique');
-
- var counts = {};
- for (var j = 0; j < foundModuleDirNames.length; ++j) {
- counts[foundModuleDirs[j]] = true;
- }
- t.equal(keys(counts).length, 1, 'all found module directories had the same count');
-};
-
-test('node-modules-paths', function (t) {
- t.test('no options', function (t) {
- var start = path.join(__dirname, 'resolver');
- var dirs = nodeModulesPaths(start);
-
- verifyDirs(t, start, dirs);
-
- t.end();
- });
-
- t.test('empty options', function (t) {
- var start = path.join(__dirname, 'resolver');
- var dirs = nodeModulesPaths(start, {});
-
- verifyDirs(t, start, dirs);
-
- t.end();
- });
-
- t.test('with paths=array option', function (t) {
- var start = path.join(__dirname, 'resolver');
- var paths = ['a', 'b'];
- var dirs = nodeModulesPaths(start, { paths: paths });
-
- verifyDirs(t, start, dirs, null, paths);
-
- t.end();
- });
-
- t.test('with paths=function option', function (t) {
- var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) {
- return getNodeModulesDirs().concat(path.join(absoluteStart, 'not node modules', request));
- };
-
- var start = path.join(__dirname, 'resolver');
- var dirs = nodeModulesPaths(start, { paths: paths }, 'pkg');
-
- verifyDirs(t, start, dirs, null, [path.join(start, 'not node modules', 'pkg')]);
-
- t.end();
- });
-
- t.test('with paths=function skipping node modules resolution', function (t) {
- var paths = function paths(request, absoluteStart, getNodeModulesDirs, opts) {
- return [];
- };
- var start = path.join(__dirname, 'resolver');
- var dirs = nodeModulesPaths(start, { paths: paths });
- t.deepEqual(dirs, [], 'no node_modules was computed');
- t.end();
- });
-
- t.test('with moduleDirectory option', function (t) {
- var start = path.join(__dirname, 'resolver');
- var moduleDirectory = 'not node modules';
- var dirs = nodeModulesPaths(start, { moduleDirectory: moduleDirectory });
-
- verifyDirs(t, start, dirs, moduleDirectory);
-
- t.end();
- });
-
- t.test('with 1 moduleDirectory and paths options', function (t) {
- var start = path.join(__dirname, 'resolver');
- var paths = ['a', 'b'];
- var moduleDirectory = 'not node modules';
- var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectory });
-
- verifyDirs(t, start, dirs, moduleDirectory, paths);
-
- t.end();
- });
-
- t.test('with 1+ moduleDirectory and paths options', function (t) {
- var start = path.join(__dirname, 'resolver');
- var paths = ['a', 'b'];
- var moduleDirectories = ['not node modules', 'other modules'];
- var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories });
-
- verifyDirs(t, start, dirs, moduleDirectories, paths);
-
- t.end();
- });
-
- t.test('combine paths correctly on Windows', function (t) {
- var start = 'C:\\Users\\username\\myProject\\src';
- var paths = [];
- var moduleDirectories = ['node_modules', start];
- var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories });
-
- t.equal(dirs.indexOf(path.resolve(start)) > -1, true, 'should contain start dir');
-
- t.end();
- });
-
- t.test('combine paths correctly on non-Windows', { skip: process.platform === 'win32' }, function (t) {
- var start = '/Users/username/git/myProject/src';
- var paths = [];
- var moduleDirectories = ['node_modules', '/Users/username/git/myProject/src'];
- var dirs = nodeModulesPaths(start, { paths: paths, moduleDirectory: moduleDirectories });
-
- t.equal(dirs.indexOf(path.resolve(start)) > -1, true, 'should contain start dir');
-
- t.end();
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/node_path.js b/deps/npm/node_modules/resolve/test/node_path.js
deleted file mode 100644
index d06aa4eafe..0000000000
--- a/deps/npm/node_modules/resolve/test/node_path.js
+++ /dev/null
@@ -1,70 +0,0 @@
-var fs = require('fs');
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('$NODE_PATH', function (t) {
- t.plan(8);
-
- var isDir = function (dir, cb) {
- if (dir === '/node_path' || dir === 'node_path/x') {
- return cb(null, true);
- }
- fs.stat(dir, function (err, stat) {
- if (!err) {
- return cb(null, stat.isDirectory());
- }
- if (err.code === 'ENOENT' || err.code === 'ENOTDIR') return cb(null, false);
- return cb(err);
- });
- };
-
- resolve('aaa', {
- paths: [
- path.join(__dirname, '/node_path/x'),
- path.join(__dirname, '/node_path/y')
- ],
- basedir: __dirname,
- isDirectory: isDir
- }, function (err, res) {
- t.error(err);
- t.equal(res, path.join(__dirname, '/node_path/x/aaa/index.js'), 'aaa resolves');
- });
-
- resolve('bbb', {
- paths: [
- path.join(__dirname, '/node_path/x'),
- path.join(__dirname, '/node_path/y')
- ],
- basedir: __dirname,
- isDirectory: isDir
- }, function (err, res) {
- t.error(err);
- t.equal(res, path.join(__dirname, '/node_path/y/bbb/index.js'), 'bbb resolves');
- });
-
- resolve('ccc', {
- paths: [
- path.join(__dirname, '/node_path/x'),
- path.join(__dirname, '/node_path/y')
- ],
- basedir: __dirname,
- isDirectory: isDir
- }, function (err, res) {
- t.error(err);
- t.equal(res, path.join(__dirname, '/node_path/x/ccc/index.js'), 'ccc resolves');
- });
-
- // ensure that relative paths still resolve against the regular `node_modules` correctly
- resolve('tap', {
- paths: [
- 'node_path'
- ],
- basedir: path.join(__dirname, 'node_path/x'),
- isDirectory: isDir
- }, function (err, res) {
- var root = require('tap/package.json').main;
- t.error(err);
- t.equal(res, path.resolve(__dirname, '..', 'node_modules/tap', root), 'tap resolves');
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/node_path/x/aaa/index.js b/deps/npm/node_modules/resolve/test/node_path/x/aaa/index.js
deleted file mode 100644
index ad70d0bb03..0000000000
--- a/deps/npm/node_modules/resolve/test/node_path/x/aaa/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'A';
diff --git a/deps/npm/node_modules/resolve/test/node_path/x/ccc/index.js b/deps/npm/node_modules/resolve/test/node_path/x/ccc/index.js
deleted file mode 100644
index a64132e4c7..0000000000
--- a/deps/npm/node_modules/resolve/test/node_path/x/ccc/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'C';
diff --git a/deps/npm/node_modules/resolve/test/node_path/y/bbb/index.js b/deps/npm/node_modules/resolve/test/node_path/y/bbb/index.js
deleted file mode 100644
index 4d0f32e243..0000000000
--- a/deps/npm/node_modules/resolve/test/node_path/y/bbb/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'B';
diff --git a/deps/npm/node_modules/resolve/test/node_path/y/ccc/index.js b/deps/npm/node_modules/resolve/test/node_path/y/ccc/index.js
deleted file mode 100644
index 793315e846..0000000000
--- a/deps/npm/node_modules/resolve/test/node_path/y/ccc/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'CY';
diff --git a/deps/npm/node_modules/resolve/test/nonstring.js b/deps/npm/node_modules/resolve/test/nonstring.js
deleted file mode 100644
index ef63c40f93..0000000000
--- a/deps/npm/node_modules/resolve/test/nonstring.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-
-test('nonstring', function (t) {
- t.plan(1);
- resolve(555, function (err, res, pkg) {
- t.ok(err);
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/pathfilter.js b/deps/npm/node_modules/resolve/test/pathfilter.js
deleted file mode 100644
index 16519aeae5..0000000000
--- a/deps/npm/node_modules/resolve/test/pathfilter.js
+++ /dev/null
@@ -1,75 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-var resolverDir = path.join(__dirname, '/pathfilter/deep_ref');
-
-var pathFilterFactory = function (t) {
- return function (pkg, x, remainder) {
- t.equal(pkg.version, '1.2.3');
- t.equal(x, path.join(resolverDir, 'node_modules/deep/ref'));
- t.equal(remainder, 'ref');
- return 'alt';
- };
-};
-
-test('#62: deep module references and the pathFilter', function (t) {
- t.test('deep/ref.js', function (st) {
- st.plan(3);
-
- resolve('deep/ref', { basedir: resolverDir }, function (err, res, pkg) {
- if (err) st.fail(err);
-
- st.equal(pkg.version, '1.2.3');
- st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js'));
- });
-
- var res = resolve.sync('deep/ref', { basedir: resolverDir });
- st.equal(res, path.join(resolverDir, 'node_modules/deep/ref.js'));
- });
-
- t.test('deep/deeper/ref', function (st) {
- st.plan(4);
-
- resolve(
- 'deep/deeper/ref',
- { basedir: resolverDir },
- function (err, res, pkg) {
- if (err) t.fail(err);
- st.notEqual(pkg, undefined);
- st.equal(pkg.version, '1.2.3');
- st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js'));
- }
- );
-
- var res = resolve.sync(
- 'deep/deeper/ref',
- { basedir: resolverDir }
- );
- st.equal(res, path.join(resolverDir, 'node_modules/deep/deeper/ref.js'));
- });
-
- t.test('deep/ref alt', function (st) {
- st.plan(8);
-
- var pathFilter = pathFilterFactory(st);
-
- var res = resolve.sync(
- 'deep/ref',
- { basedir: resolverDir, pathFilter: pathFilter }
- );
- st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js'));
-
- resolve(
- 'deep/ref',
- { basedir: resolverDir, pathFilter: pathFilter },
- function (err, res, pkg) {
- if (err) st.fail(err);
- st.equal(res, path.join(resolverDir, 'node_modules/deep/alt.js'));
- st.end();
- }
- );
- });
-
- t.end();
-});
diff --git a/deps/npm/node_modules/resolve/test/pathfilter/deep_ref/main.js b/deps/npm/node_modules/resolve/test/pathfilter/deep_ref/main.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/pathfilter/deep_ref/main.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/precedence.js b/deps/npm/node_modules/resolve/test/precedence.js
deleted file mode 100644
index 2febb598fb..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence.js
+++ /dev/null
@@ -1,23 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('precedence', function (t) {
- t.plan(3);
- var dir = path.join(__dirname, 'precedence/aaa');
-
- resolve('./', { basedir: dir }, function (err, res, pkg) {
- t.ifError(err);
- t.equal(res, path.join(dir, 'index.js'));
- t.equal(pkg.name, 'resolve');
- });
-});
-
-test('./ should not load ${dir}.js', function (t) { // eslint-disable-line no-template-curly-in-string
- t.plan(1);
- var dir = path.join(__dirname, 'precedence/bbb');
-
- resolve('./', { basedir: dir }, function (err, res, pkg) {
- t.ok(err);
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/precedence/aaa.js b/deps/npm/node_modules/resolve/test/precedence/aaa.js
deleted file mode 100644
index b83a3e7ad9..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence/aaa.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'wtf';
diff --git a/deps/npm/node_modules/resolve/test/precedence/aaa/index.js b/deps/npm/node_modules/resolve/test/precedence/aaa/index.js
deleted file mode 100644
index e0f8f6abf7..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence/aaa/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'okok';
diff --git a/deps/npm/node_modules/resolve/test/precedence/aaa/main.js b/deps/npm/node_modules/resolve/test/precedence/aaa/main.js
deleted file mode 100644
index 93542a965e..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence/aaa/main.js
+++ /dev/null
@@ -1 +0,0 @@
-console.log(require('./'));
diff --git a/deps/npm/node_modules/resolve/test/precedence/bbb.js b/deps/npm/node_modules/resolve/test/precedence/bbb.js
deleted file mode 100644
index 2298f47fdd..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence/bbb.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = '>_<';
diff --git a/deps/npm/node_modules/resolve/test/precedence/bbb/main.js b/deps/npm/node_modules/resolve/test/precedence/bbb/main.js
deleted file mode 100644
index 716b81d4bd..0000000000
--- a/deps/npm/node_modules/resolve/test/precedence/bbb/main.js
+++ /dev/null
@@ -1 +0,0 @@
-console.log(require('./')); // should throw
diff --git a/deps/npm/node_modules/resolve/test/resolver.js b/deps/npm/node_modules/resolve/test/resolver.js
deleted file mode 100644
index aa36ee1149..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver.js
+++ /dev/null
@@ -1,450 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('async foo', function (t) {
- t.plan(12);
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./foo', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo.js'));
- t.equal(pkg && pkg.name, 'resolve');
- });
-
- resolve('./foo.js', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo.js'));
- t.equal(pkg && pkg.name, 'resolve');
- });
-
- resolve('./foo', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo.js'));
- t.equal(pkg && pkg.main, 'resolver');
- });
-
- resolve('./foo.js', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo.js'));
- t.equal(pkg.main, 'resolver');
- });
-
- resolve('./foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo.js'));
- });
-
- resolve('foo', { basedir: dir }, function (err) {
- t.equal(err.message, "Cannot find module 'foo' from '" + path.resolve(dir) + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-
- // Test that filename is reported as the "from" value when passed.
- resolve('foo', { basedir: dir, filename: path.join(dir, 'baz.js') }, function (err) {
- t.equal(err.message, "Cannot find module 'foo' from '" + path.join(dir, 'baz.js') + "'");
- });
-});
-
-test('bar', function (t) {
- t.plan(6);
- var dir = path.join(__dirname, 'resolver');
-
- resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('foo', { basedir: dir + '/bar' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('foo', { basedir: dir + '/bar', 'package': { main: 'bar' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'bar/node_modules/foo/index.js'));
- t.equal(pkg.main, 'bar');
- });
-});
-
-test('baz', function (t) {
- t.plan(4);
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./baz', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'baz/quux.js'));
- t.equal(pkg.main, 'quux.js');
- });
-
- resolve('./baz', { basedir: dir, 'package': { main: 'resolver' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'baz/quux.js'));
- t.equal(pkg.main, 'quux.js');
- });
-});
-
-test('biz', function (t) {
- t.plan(24);
- var dir = path.join(__dirname, 'resolver/biz/node_modules');
-
- resolve('./grux', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'grux/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('./grux', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'grux/index.js'));
- t.equal(pkg.main, 'biz');
- });
-
- resolve('./garply', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'garply/lib/index.js'));
- t.equal(pkg.main, './lib');
- });
-
- resolve('./garply', { basedir: dir, 'package': { main: 'biz' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'garply/lib/index.js'));
- t.equal(pkg.main, './lib');
- });
-
- resolve('tiv', { basedir: dir + '/grux' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'tiv/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('tiv', { basedir: dir + '/grux', 'package': { main: 'grux' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'tiv/index.js'));
- t.equal(pkg.main, 'grux');
- });
-
- resolve('tiv', { basedir: dir + '/garply' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'tiv/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('tiv', { basedir: dir + '/garply', 'package': { main: './lib' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'tiv/index.js'));
- t.equal(pkg.main, './lib');
- });
-
- resolve('grux', { basedir: dir + '/tiv' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'grux/index.js'));
- t.equal(pkg, undefined);
- });
-
- resolve('grux', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'grux/index.js'));
- t.equal(pkg.main, 'tiv');
- });
-
- resolve('garply', { basedir: dir + '/tiv' }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'garply/lib/index.js'));
- t.equal(pkg.main, './lib');
- });
-
- resolve('garply', { basedir: dir + '/tiv', 'package': { main: 'tiv' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'garply/lib/index.js'));
- t.equal(pkg.main, './lib');
- });
-});
-
-test('quux', function (t) {
- t.plan(2);
- var dir = path.join(__dirname, 'resolver/quux');
-
- resolve('./foo', { basedir: dir, 'package': { main: 'quux' } }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'foo/index.js'));
- t.equal(pkg.main, 'quux');
- });
-});
-
-test('normalize', function (t) {
- t.plan(2);
- var dir = path.join(__dirname, 'resolver/biz/node_modules/grux');
-
- resolve('../grux', { basedir: dir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'index.js'));
- t.equal(pkg, undefined);
- });
-});
-
-test('cup', function (t) {
- t.plan(5);
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./cup', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'cup.coffee'));
- });
-
- resolve('./cup.coffee', { basedir: dir }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'cup.coffee'));
- });
-
- resolve('./cup', { basedir: dir, extensions: ['.js'] }, function (err, res) {
- t.equal(err.message, "Cannot find module './cup' from '" + path.resolve(dir) + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-
- // Test that filename is reported as the "from" value when passed.
- resolve('./cup', { basedir: dir, extensions: ['.js'], filename: path.join(dir, 'cupboard.js') }, function (err, res) {
- t.equal(err.message, "Cannot find module './cup' from '" + path.join(dir, 'cupboard.js') + "'");
- });
-});
-
-test('mug', function (t) {
- t.plan(3);
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./mug', { basedir: dir }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'mug.js'));
- });
-
- resolve('./mug', { basedir: dir, extensions: ['.coffee', '.js'] }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, '/mug.coffee'));
- });
-
- resolve('./mug', { basedir: dir, extensions: ['.js', '.coffee'] }, function (err, res) {
- t.equal(res, path.join(dir, '/mug.js'));
- });
-});
-
-test('other path', function (t) {
- t.plan(6);
- var resolverDir = path.join(__dirname, 'resolver');
- var dir = path.join(resolverDir, 'bar');
- var otherDir = path.join(resolverDir, 'other_path');
-
- resolve('root', { basedir: dir, paths: [otherDir] }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(resolverDir, 'other_path/root.js'));
- });
-
- resolve('lib/other-lib', { basedir: dir, paths: [otherDir] }, function (err, res) {
- if (err) t.fail(err);
- t.equal(res, path.join(resolverDir, 'other_path/lib/other-lib.js'));
- });
-
- resolve('root', { basedir: dir }, function (err, res) {
- t.equal(err.message, "Cannot find module 'root' from '" + path.resolve(dir) + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-
- resolve('zzz', { basedir: dir, paths: [otherDir] }, function (err, res) {
- t.equal(err.message, "Cannot find module 'zzz' from '" + path.resolve(dir) + "'");
- t.equal(err.code, 'MODULE_NOT_FOUND');
- });
-});
-
-test('path iterator', function (t) {
- t.plan(2);
-
- var resolverDir = path.join(__dirname, 'resolver');
-
- var exactIterator = function (x, start, getPackageCandidates, opts) {
- return [path.join(resolverDir, x)];
- };
-
- resolve('baz', { packageIterator: exactIterator }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(resolverDir, 'baz/quux.js'));
- t.equal(pkg && pkg.name, 'baz');
- });
-});
-
-test('incorrect main', function (t) {
- t.plan(1);
-
- var resolverDir = path.join(__dirname, 'resolver');
- var dir = path.join(resolverDir, 'incorrect_main');
-
- resolve('./incorrect_main', { basedir: resolverDir }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'index.js'));
- });
-});
-
-test('without basedir', function (t) {
- t.plan(1);
-
- var dir = path.join(__dirname, 'resolver/without_basedir');
- var tester = require(path.join(dir, 'main.js'));
-
- tester(t, function (err, res, pkg) {
- if (err) {
- t.fail(err);
- } else {
- t.equal(res, path.join(dir, 'node_modules/mymodule.js'));
- }
- });
-});
-
-test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) {
- t.plan(2);
-
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./foo', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'same_names/foo.js'));
- });
-
- resolve('./foo/', { basedir: path.join(dir, 'same_names') }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'same_names/foo/index.js'));
- });
-});
-
-test('#211 - incorrectly resolves module-paths like "." when from inside a folder with a sibling file of the same name', function (t) {
- t.plan(2);
-
- var dir = path.join(__dirname, 'resolver');
-
- resolve('./', { basedir: path.join(dir, 'same_names/foo') }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'same_names/foo/index.js'));
- });
-
- resolve('.', { basedir: path.join(dir, 'same_names/foo') }, function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'same_names/foo/index.js'));
- });
-});
-
-test('async: #121 - treating an existing file as a dir when no basedir', function (t) {
- var testFile = path.basename(__filename);
-
- t.test('sanity check', function (st) {
- st.plan(1);
- resolve('./' + testFile, function (err, res, pkg) {
- if (err) t.fail(err);
- st.equal(res, __filename, 'sanity check');
- });
- });
-
- t.test('with a fake directory', function (st) {
- st.plan(4);
-
- resolve('./' + testFile + '/blah', function (err, res, pkg) {
- st.ok(err, 'there is an error');
- st.notOk(res, 'no result');
-
- st.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
- st.equal(
- err && err.message,
- 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'',
- 'can not find nonexistent module'
- );
- st.end();
- });
- });
-
- t.end();
-});
-
-test('async dot main', function (t) {
- var start = new Date();
- t.plan(3);
- resolve('./resolver/dot_main', function (err, ret) {
- t.notOk(err);
- t.equal(ret, path.join(__dirname, 'resolver/dot_main/index.js'));
- t.ok(new Date() - start < 50, 'resolve.sync timedout');
- t.end();
- });
-});
-
-test('async dot slash main', function (t) {
- var start = new Date();
- t.plan(3);
- resolve('./resolver/dot_slash_main', function (err, ret) {
- t.notOk(err);
- t.equal(ret, path.join(__dirname, 'resolver/dot_slash_main/index.js'));
- t.ok(new Date() - start < 50, 'resolve.sync timedout');
- t.end();
- });
-});
-
-test('not a directory', function (t) {
- t.plan(6);
- var path = './foo';
- resolve(path, { basedir: __filename }, function (err, res, pkg) {
- t.ok(err, 'a non-directory errors');
- t.equal(arguments.length, 1);
- t.equal(res, undefined);
- t.equal(pkg, undefined);
-
- t.equal(err && err.message, 'Cannot find module \'' + path + '\' from \'' + __filename + '\'');
- t.equal(err && err.code, 'MODULE_NOT_FOUND');
- });
-});
-
-test('non-string "main" field in package.json', function (t) {
- t.plan(5);
-
- var dir = path.join(__dirname, 'resolver');
- resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) {
- t.ok(err, 'errors on non-string main');
- t.equal(err.message, 'package “invalid main” `main` must be a string');
- t.equal(err.code, 'INVALID_PACKAGE_MAIN');
- t.equal(res, undefined, 'res is undefined');
- t.equal(pkg, undefined, 'pkg is undefined');
- });
-});
-
-test('non-string "main" field in package.json', function (t) {
- t.plan(5);
-
- var dir = path.join(__dirname, 'resolver');
- resolve('./invalid_main', { basedir: dir }, function (err, res, pkg) {
- t.ok(err, 'errors on non-string main');
- t.equal(err.message, 'package “invalid main” `main` must be a string');
- t.equal(err.code, 'INVALID_PACKAGE_MAIN');
- t.equal(res, undefined, 'res is undefined');
- t.equal(pkg, undefined, 'pkg is undefined');
- });
-});
-
-test('browser field in package.json', function (t) {
- t.plan(3);
-
- var dir = path.join(__dirname, 'resolver');
- resolve(
- './browser_field',
- {
- basedir: dir,
- packageFilter: function packageFilter(pkg) {
- if (pkg.browser) {
- pkg.main = pkg.browser; // eslint-disable-line no-param-reassign
- delete pkg.browser; // eslint-disable-line no-param-reassign
- }
- return pkg;
- }
- },
- function (err, res, pkg) {
- if (err) t.fail(err);
- t.equal(res, path.join(dir, 'browser_field', 'b.js'));
- t.equal(pkg && pkg.main, 'b');
- t.equal(pkg && pkg.browser, undefined);
- }
- );
-});
diff --git a/deps/npm/node_modules/resolve/test/resolver/baz/doom.js b/deps/npm/node_modules/resolve/test/resolver/baz/doom.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/baz/doom.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/baz/package.json b/deps/npm/node_modules/resolve/test/resolver/baz/package.json
deleted file mode 100644
index 2f77720b86..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/baz/package.json
+++ /dev/null
@@ -1,4 +0,0 @@
-{
- "name": "baz",
- "main": "quux.js"
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/baz/quux.js b/deps/npm/node_modules/resolve/test/resolver/baz/quux.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/baz/quux.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/browser_field/a.js b/deps/npm/node_modules/resolve/test/resolver/browser_field/a.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/browser_field/a.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/browser_field/b.js b/deps/npm/node_modules/resolve/test/resolver/browser_field/b.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/browser_field/b.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/browser_field/package.json b/deps/npm/node_modules/resolve/test/resolver/browser_field/package.json
deleted file mode 100644
index bf406f0830..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/browser_field/package.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "name": "browser_field",
- "main": "a",
- "browser": "b"
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/cup.coffee b/deps/npm/node_modules/resolve/test/resolver/cup.coffee
deleted file mode 100644
index 8b13789179..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/cup.coffee
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/deps/npm/node_modules/resolve/test/resolver/dot_main/index.js b/deps/npm/node_modules/resolve/test/resolver/dot_main/index.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/dot_main/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/dot_main/package.json b/deps/npm/node_modules/resolve/test/resolver/dot_main/package.json
deleted file mode 100644
index d7f4fc8079..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/dot_main/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "main": "."
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/index.js b/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/index.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/package.json b/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/package.json
deleted file mode 100644
index f51287b9d1..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/dot_slash_main/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "main": "./"
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/foo.js b/deps/npm/node_modules/resolve/test/resolver/foo.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/foo.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/incorrect_main/index.js b/deps/npm/node_modules/resolve/test/resolver/incorrect_main/index.js
deleted file mode 100644
index bc1fb0a6f4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/incorrect_main/index.js
+++ /dev/null
@@ -1,2 +0,0 @@
-// this is the actual main file 'index.js', not 'wrong.js' like the package.json would indicate
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/incorrect_main/package.json b/deps/npm/node_modules/resolve/test/resolver/incorrect_main/package.json
deleted file mode 100644
index b718804176..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/incorrect_main/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "main": "wrong.js"
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/invalid_main/package.json b/deps/npm/node_modules/resolve/test/resolver/invalid_main/package.json
deleted file mode 100644
index 0cf8279950..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/invalid_main/package.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "name": "invalid main",
- "main": [
- "why is this a thing",
- "srsly omg wtf"
- ]
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/mug.coffee b/deps/npm/node_modules/resolve/test/resolver/mug.coffee
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/mug.coffee
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/mug.js b/deps/npm/node_modules/resolve/test/resolver/mug.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/mug.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/lerna.json b/deps/npm/node_modules/resolve/test/resolver/multirepo/lerna.json
deleted file mode 100644
index d6707ca0cd..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/lerna.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "packages": [
- "packages/*"
- ],
- "version": "0.0.0"
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/package.json b/deps/npm/node_modules/resolve/test/resolver/multirepo/package.json
deleted file mode 100644
index 8508f9d2c4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/package.json
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "name": "monorepo-symlink-test",
- "private": true,
- "version": "0.0.0",
- "description": "",
- "main": "index.js",
- "scripts": {
- "postinstall": "lerna bootstrap",
- "test": "node packages/package-a"
- },
- "author": "",
- "license": "MIT",
- "dependencies": {
- "jquery": "^3.3.1",
- "resolve": "../../../"
- },
- "devDependencies": {
- "lerna": "^3.4.3"
- }
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js b/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js
deleted file mode 100644
index 8875a32df0..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/index.js
+++ /dev/null
@@ -1,35 +0,0 @@
-'use strict';
-
-var assert = require('assert');
-var path = require('path');
-var resolve = require('resolve');
-
-var basedir = __dirname + '/node_modules/@my-scope/package-b';
-
-var expected = path.join(__dirname, '../../node_modules/jquery/dist/jquery.js');
-
-/*
- * preserveSymlinks === false
- * will search NPM package from
- * - packages/package-b/node_modules
- * - packages/node_modules
- * - node_modules
- */
-assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: false }), expected);
-assert.equal(resolve.sync('../../node_modules/jquery', { basedir: basedir, preserveSymlinks: false }), expected);
-
-/*
- * preserveSymlinks === true
- * will search NPM package from
- * - packages/package-a/node_modules/@my-scope/packages/package-b/node_modules
- * - packages/package-a/node_modules/@my-scope/packages/node_modules
- * - packages/package-a/node_modules/@my-scope/node_modules
- * - packages/package-a/node_modules/node_modules
- * - packages/package-a/node_modules
- * - packages/node_modules
- * - node_modules
- */
-assert.equal(resolve.sync('jquery', { basedir: basedir, preserveSymlinks: true }), expected);
-assert.equal(resolve.sync('../../../../../node_modules/jquery', { basedir: basedir, preserveSymlinks: true }), expected);
-
-console.log(' * all monorepo paths successfully resolved through symlinks');
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json b/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json
deleted file mode 100644
index 204de51e05..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-a/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "@my-scope/package-a",
- "version": "0.0.0",
- "private": true,
- "description": "",
- "license": "MIT",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: run tests from root\" && exit 1"
- },
- "dependencies": {
- "@my-scope/package-b": "^0.0.0"
- }
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js b/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/index.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json b/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json
deleted file mode 100644
index f57c3b5f5e..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/multirepo/packages/package-b/package.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "@my-scope/package-b",
- "private": true,
- "version": "0.0.0",
- "description": "",
- "license": "MIT",
- "main": "index.js",
- "scripts": {
- "test": "echo \"Error: run tests from root\" && exit 1"
- },
- "dependencies": {
- "@my-scope/package-a": "^0.0.0"
- }
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js b/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js
deleted file mode 100644
index 9b4846a82a..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/async.js
+++ /dev/null
@@ -1,26 +0,0 @@
-var a = require.resolve('buffer/').replace(process.cwd(), '$CWD');
-var b;
-var c;
-
-var test = function test() {
- console.log(a, ': require.resolve, preserveSymlinks ' + (process.execArgv.indexOf('preserve-symlinks') > -1 ? 'true' : 'false'));
- console.log(b, ': preserveSymlinks true');
- console.log(c, ': preserveSymlinks false');
-
- if (a !== b && a !== c) {
- throw 'async: no match';
- }
- console.log('async: success! a matched either b or c\n');
-};
-
-require('resolve')('buffer/', { preserveSymlinks: true }, function (err, result) {
- if (err) { throw err; }
- b = result.replace(process.cwd(), '$CWD');
- if (b && c) { test(); }
-});
-require('resolve')('buffer/', { preserveSymlinks: false }, function (err, result) {
- if (err) { throw err; }
- c = result.replace(process.cwd(), '$CWD');
- if (b && c) { test(); }
-});
-
diff --git a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json b/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json
deleted file mode 100644
index acfe9e9517..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "mylib",
- "version": "0.0.0",
- "description": "",
- "private": true,
- "scripts": {
- "test": "echo \"Error: no test specified\" && exit 1"
- },
- "keywords": [],
- "author": "",
- "license": "ISC",
- "dependencies": {
- "buffer": "*"
- }
-}
diff --git a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js b/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js
deleted file mode 100644
index 3283efc2ec..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/nested_symlinks/mylib/sync.js
+++ /dev/null
@@ -1,12 +0,0 @@
-var a = require.resolve('buffer/').replace(process.cwd(), '$CWD');
-var b = require('resolve').sync('buffer/', { preserveSymlinks: true }).replace(process.cwd(), '$CWD');
-var c = require('resolve').sync('buffer/', { preserveSymlinks: false }).replace(process.cwd(), '$CWD');
-
-console.log(a, ': require.resolve, preserveSymlinks ' + (process.execArgv.indexOf('preserve-symlinks') > -1 ? 'true' : 'false'));
-console.log(b, ': preserveSymlinks true');
-console.log(c, ': preserveSymlinks false');
-
-if (a !== b && a !== c) {
- throw 'sync: no match';
-}
-console.log('sync: success! a matched either b or c\n');
diff --git a/deps/npm/node_modules/resolve/test/resolver/other_path/lib/other-lib.js b/deps/npm/node_modules/resolve/test/resolver/other_path/lib/other-lib.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/other_path/lib/other-lib.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/other_path/root.js b/deps/npm/node_modules/resolve/test/resolver/other_path/root.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/other_path/root.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/quux/foo/index.js b/deps/npm/node_modules/resolve/test/resolver/quux/foo/index.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/quux/foo/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/same_names/foo.js b/deps/npm/node_modules/resolve/test/resolver/same_names/foo.js
deleted file mode 100644
index 888cae37af..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/same_names/foo.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 42;
diff --git a/deps/npm/node_modules/resolve/test/resolver/same_names/foo/index.js b/deps/npm/node_modules/resolve/test/resolver/same_names/foo/index.js
deleted file mode 100644
index bd816eaba4..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/same_names/foo/index.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 1;
diff --git a/deps/npm/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js b/deps/npm/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/symlinked/_/node_modules/foo.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/resolver/symlinked/package/bar.js b/deps/npm/node_modules/resolve/test/resolver/symlinked/package/bar.js
deleted file mode 100644
index cb1c2c01e7..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/symlinked/package/bar.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'bar';
diff --git a/deps/npm/node_modules/resolve/test/resolver/symlinked/package/package.json b/deps/npm/node_modules/resolve/test/resolver/symlinked/package/package.json
deleted file mode 100644
index 8e1b585914..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/symlinked/package/package.json
+++ /dev/null
@@ -1,3 +0,0 @@
-{
- "main": "bar.js"
-} \ No newline at end of file
diff --git a/deps/npm/node_modules/resolve/test/resolver/without_basedir/main.js b/deps/npm/node_modules/resolve/test/resolver/without_basedir/main.js
deleted file mode 100644
index 5b31975be6..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver/without_basedir/main.js
+++ /dev/null
@@ -1,5 +0,0 @@
-var resolve = require('../../../');
-
-module.exports = function (t, cb) {
- resolve('mymodule', null, cb);
-};
diff --git a/deps/npm/node_modules/resolve/test/resolver_sync.js b/deps/npm/node_modules/resolve/test/resolver_sync.js
deleted file mode 100644
index 3082c96e58..0000000000
--- a/deps/npm/node_modules/resolve/test/resolver_sync.js
+++ /dev/null
@@ -1,358 +0,0 @@
-var path = require('path');
-var test = require('tape');
-var resolve = require('../');
-
-test('foo', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- t.equal(
- resolve.sync('./foo', { basedir: dir }),
- path.join(dir, 'foo.js')
- );
-
- t.equal(
- resolve.sync('./foo.js', { basedir: dir }),
- path.join(dir, 'foo.js')
- );
-
- t.equal(
- resolve.sync('./foo.js', { basedir: dir, filename: path.join(dir, 'bar.js') }),
- path.join(dir, 'foo.js')
- );
-
- t.throws(function () {
- resolve.sync('foo', { basedir: dir });
- });
-
- // Test that filename is reported as the "from" value when passed.
- t.throws(
- function () {
- resolve.sync('foo', { basedir: dir, filename: path.join(dir, 'bar.js') });
- },
- {
- name: 'Error',
- message: "Cannot find module 'foo' from '" + path.join(dir, 'bar.js') + "'"
- }
- );
-
- t.end();
-});
-
-test('bar', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- t.equal(
- resolve.sync('foo', { basedir: path.join(dir, 'bar') }),
- path.join(dir, 'bar/node_modules/foo/index.js')
- );
- t.end();
-});
-
-test('baz', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- t.equal(
- resolve.sync('./baz', { basedir: dir }),
- path.join(dir, 'baz/quux.js')
- );
- t.end();
-});
-
-test('biz', function (t) {
- var dir = path.join(__dirname, 'resolver/biz/node_modules');
- t.equal(
- resolve.sync('./grux', { basedir: dir }),
- path.join(dir, 'grux/index.js')
- );
-
- t.equal(
- resolve.sync('tiv', { basedir: path.join(dir, 'grux') }),
- path.join(dir, 'tiv/index.js')
- );
-
- t.equal(
- resolve.sync('grux', { basedir: path.join(dir, 'tiv') }),
- path.join(dir, 'grux/index.js')
- );
- t.end();
-});
-
-test('normalize', function (t) {
- var dir = path.join(__dirname, 'resolver/biz/node_modules/grux');
- t.equal(
- resolve.sync('../grux', { basedir: dir }),
- path.join(dir, 'index.js')
- );
- t.end();
-});
-
-test('cup', function (t) {
- var dir = path.join(__dirname, 'resolver');
- t.equal(
- resolve.sync('./cup', {
- basedir: dir,
- extensions: ['.js', '.coffee']
- }),
- path.join(dir, 'cup.coffee')
- );
-
- t.equal(
- resolve.sync('./cup.coffee', { basedir: dir }),
- path.join(dir, 'cup.coffee')
- );
-
- t.throws(function () {
- resolve.sync('./cup', {
- basedir: dir,
- extensions: ['.js']
- });
- });
-
- t.end();
-});
-
-test('mug', function (t) {
- var dir = path.join(__dirname, 'resolver');
- t.equal(
- resolve.sync('./mug', { basedir: dir }),
- path.join(dir, 'mug.js')
- );
-
- t.equal(
- resolve.sync('./mug', {
- basedir: dir,
- extensions: ['.coffee', '.js']
- }),
- path.join(dir, 'mug.coffee')
- );
-
- t.equal(
- resolve.sync('./mug', {
- basedir: dir,
- extensions: ['.js', '.coffee']
- }),
- path.join(dir, 'mug.js')
- );
-
- t.end();
-});
-
-test('other path', function (t) {
- var resolverDir = path.join(__dirname, 'resolver');
- var dir = path.join(resolverDir, 'bar');
- var otherDir = path.join(resolverDir, 'other_path');
-
- t.equal(
- resolve.sync('root', {
- basedir: dir,
- paths: [otherDir]
- }),
- path.join(resolverDir, 'other_path/root.js')
- );
-
- t.equal(
- resolve.sync('lib/other-lib', {
- basedir: dir,
- paths: [otherDir]
- }),
- path.join(resolverDir, 'other_path/lib/other-lib.js')
- );
-
- t.throws(function () {
- resolve.sync('root', { basedir: dir });
- });
-
- t.throws(function () {
- resolve.sync('zzz', {
- basedir: dir,
- paths: [otherDir]
- });
- });
-
- t.end();
-});
-
-test('path iterator', function (t) {
- var resolverDir = path.join(__dirname, 'resolver');
-
- var exactIterator = function (x, start, getPackageCandidates, opts) {
- return [path.join(resolverDir, x)];
- };
-
- t.equal(
- resolve.sync('baz', { packageIterator: exactIterator }),
- path.join(resolverDir, 'baz/quux.js')
- );
-
- t.end();
-});
-
-test('incorrect main', function (t) {
- var resolverDir = path.join(__dirname, 'resolver');
- var dir = path.join(resolverDir, 'incorrect_main');
-
- t.equal(
- resolve.sync('./incorrect_main', { basedir: resolverDir }),
- path.join(dir, 'index.js')
- );
-
- t.end();
-});
-
-var stubStatSync = function stubStatSync(fn) {
- var fs = require('fs');
- var statSync = fs.statSync;
- try {
- fs.statSync = function () {
- throw new EvalError('Unknown Error');
- };
- return fn();
- } finally {
- fs.statSync = statSync;
- }
-};
-
-test('#79 - re-throw non ENOENT errors from stat', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- stubStatSync(function () {
- t.throws(function () {
- resolve.sync('foo', { basedir: dir });
- }, /Unknown Error/);
- });
-
- t.end();
-});
-
-test('#52 - incorrectly resolves module-paths like "./someFolder/" when there is a file of the same name', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- t.equal(
- resolve.sync('./foo', { basedir: path.join(dir, 'same_names') }),
- path.join(dir, 'same_names/foo.js')
- );
- t.equal(
- resolve.sync('./foo/', { basedir: path.join(dir, 'same_names') }),
- path.join(dir, 'same_names/foo/index.js')
- );
- t.end();
-});
-
-test('#211 - incorrectly resolves module-paths like "." when from inside a folder with a sibling file of the same name', function (t) {
- var dir = path.join(__dirname, 'resolver');
-
- t.equal(
- resolve.sync('./', { basedir: path.join(dir, 'same_names/foo') }),
- path.join(dir, 'same_names/foo/index.js')
- );
- t.equal(
- resolve.sync('.', { basedir: path.join(dir, 'same_names/foo') }),
- path.join(dir, 'same_names/foo/index.js')
- );
- t.end();
-});
-
-test('sync: #121 - treating an existing file as a dir when no basedir', function (t) {
- var testFile = path.basename(__filename);
-
- t.test('sanity check', function (st) {
- st.equal(
- resolve.sync('./' + testFile),
- __filename,
- 'sanity check'
- );
- st.end();
- });
-
- t.test('with a fake directory', function (st) {
- function run() { return resolve.sync('./' + testFile + '/blah'); }
-
- st.throws(run, 'throws an error');
-
- try {
- run();
- } catch (e) {
- st.equal(e.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
- st.equal(
- e.message,
- 'Cannot find module \'./' + testFile + '/blah\' from \'' + __dirname + '\'',
- 'can not find nonexistent module'
- );
- }
-
- st.end();
- });
-
- t.end();
-});
-
-test('sync dot main', function (t) {
- var start = new Date();
- t.equal(resolve.sync('./resolver/dot_main'), path.join(__dirname, 'resolver/dot_main/index.js'));
- t.ok(new Date() - start < 50, 'resolve.sync timedout');
- t.end();
-});
-
-test('sync dot slash main', function (t) {
- var start = new Date();
- t.equal(resolve.sync('./resolver/dot_slash_main'), path.join(__dirname, 'resolver/dot_slash_main/index.js'));
- t.ok(new Date() - start < 50, 'resolve.sync timedout');
- t.end();
-});
-
-test('not a directory', function (t) {
- var path = './foo';
- try {
- resolve.sync(path, { basedir: __filename });
- t.fail();
- } catch (err) {
- t.ok(err, 'a non-directory errors');
- t.equal(err && err.message, 'Cannot find module \'' + path + "' from '" + __filename + "'");
- t.equal(err && err.code, 'MODULE_NOT_FOUND');
- }
- t.end();
-});
-
-test('non-string "main" field in package.json', function (t) {
- var dir = path.join(__dirname, 'resolver');
- try {
- var result = resolve.sync('./invalid_main', { basedir: dir });
- t.equal(result, undefined, 'result should not exist');
- t.fail('should not get here');
- } catch (err) {
- t.ok(err, 'errors on non-string main');
- t.equal(err.message, 'package “invalid main” `main` must be a string');
- t.equal(err.code, 'INVALID_PACKAGE_MAIN');
- }
- t.end();
-});
-
-test('non-string "main" field in package.json', function (t) {
- var dir = path.join(__dirname, 'resolver');
- try {
- var result = resolve.sync('./invalid_main', { basedir: dir });
- t.equal(result, undefined, 'result should not exist');
- t.fail('should not get here');
- } catch (err) {
- t.ok(err, 'errors on non-string main');
- t.equal(err.message, 'package “invalid main” `main` must be a string');
- t.equal(err.code, 'INVALID_PACKAGE_MAIN');
- }
- t.end();
-});
-
-test('browser field in package.json', function (t) {
- var dir = path.join(__dirname, 'resolver');
- var res = resolve.sync('./browser_field', {
- basedir: dir,
- packageFilter: function packageFilter(pkg) {
- if (pkg.browser) {
- pkg.main = pkg.browser; // eslint-disable-line no-param-reassign
- delete pkg.browser; // eslint-disable-line no-param-reassign
- }
- return pkg;
- }
- });
- t.equal(res, path.join(dir, 'browser_field', 'b.js'));
- t.end();
-});
diff --git a/deps/npm/node_modules/resolve/test/shadowed_core.js b/deps/npm/node_modules/resolve/test/shadowed_core.js
deleted file mode 100644
index 3a5f4fcff7..0000000000
--- a/deps/npm/node_modules/resolve/test/shadowed_core.js
+++ /dev/null
@@ -1,54 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-var path = require('path');
-
-test('shadowed core modules still return core module', function (t) {
- t.plan(2);
-
- resolve('util', { basedir: path.join(__dirname, 'shadowed_core') }, function (err, res) {
- t.ifError(err);
- t.equal(res, 'util');
- });
-});
-
-test('shadowed core modules still return core module [sync]', function (t) {
- t.plan(1);
-
- var res = resolve.sync('util', { basedir: path.join(__dirname, 'shadowed_core') });
-
- t.equal(res, 'util');
-});
-
-test('shadowed core modules return shadow when appending `/`', function (t) {
- t.plan(2);
-
- resolve('util/', { basedir: path.join(__dirname, 'shadowed_core') }, function (err, res) {
- t.ifError(err);
- t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js'));
- });
-});
-
-test('shadowed core modules return shadow when appending `/` [sync]', function (t) {
- t.plan(1);
-
- var res = resolve.sync('util/', { basedir: path.join(__dirname, 'shadowed_core') });
-
- t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js'));
-});
-
-test('shadowed core modules return shadow with `includeCoreModules: false`', function (t) {
- t.plan(2);
-
- resolve('util', { basedir: path.join(__dirname, 'shadowed_core'), includeCoreModules: false }, function (err, res) {
- t.ifError(err);
- t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js'));
- });
-});
-
-test('shadowed core modules return shadow with `includeCoreModules: false` [sync]', function (t) {
- t.plan(1);
-
- var res = resolve.sync('util', { basedir: path.join(__dirname, 'shadowed_core'), includeCoreModules: false });
-
- t.equal(res, path.join(__dirname, 'shadowed_core/node_modules/util/index.js'));
-});
diff --git a/deps/npm/node_modules/resolve/test/shadowed_core/node_modules/util/index.js b/deps/npm/node_modules/resolve/test/shadowed_core/node_modules/util/index.js
deleted file mode 100644
index e69de29bb2..0000000000
--- a/deps/npm/node_modules/resolve/test/shadowed_core/node_modules/util/index.js
+++ /dev/null
diff --git a/deps/npm/node_modules/resolve/test/subdirs.js b/deps/npm/node_modules/resolve/test/subdirs.js
deleted file mode 100644
index b7b8450a9e..0000000000
--- a/deps/npm/node_modules/resolve/test/subdirs.js
+++ /dev/null
@@ -1,13 +0,0 @@
-var test = require('tape');
-var resolve = require('../');
-var path = require('path');
-
-test('subdirs', function (t) {
- t.plan(2);
-
- var dir = path.join(__dirname, '/subdirs');
- resolve('a/b/c/x.json', { basedir: dir }, function (err, res) {
- t.ifError(err);
- t.equal(res, path.join(dir, 'node_modules/a/b/c/x.json'));
- });
-});
diff --git a/deps/npm/node_modules/resolve/test/symlinks.js b/deps/npm/node_modules/resolve/test/symlinks.js
deleted file mode 100644
index 35f881afb8..0000000000
--- a/deps/npm/node_modules/resolve/test/symlinks.js
+++ /dev/null
@@ -1,176 +0,0 @@
-var path = require('path');
-var fs = require('fs');
-var test = require('tape');
-var map = require('array.prototype.map');
-var resolve = require('../');
-
-var symlinkDir = path.join(__dirname, 'resolver', 'symlinked', 'symlink');
-var packageDir = path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'package');
-var modADir = path.join(__dirname, 'symlinks', 'source', 'node_modules', 'mod-a');
-var symlinkModADir = path.join(__dirname, 'symlinks', 'dest', 'node_modules', 'mod-a');
-try {
- fs.unlinkSync(symlinkDir);
-} catch (err) {}
-try {
- fs.unlinkSync(packageDir);
-} catch (err) {}
-try {
- fs.unlinkSync(modADir);
-} catch (err) {}
-try {
- fs.unlinkSync(symlinkModADir);
-} catch (err) {}
-
-try {
- fs.symlinkSync('./_/symlink_target', symlinkDir, 'dir');
-} catch (err) {
- // if fails then it is probably on Windows and lets try to create a junction
- fs.symlinkSync(path.join(__dirname, 'resolver', 'symlinked', '_', 'symlink_target') + '\\', symlinkDir, 'junction');
-}
-try {
- fs.symlinkSync('../../package', packageDir, 'dir');
-} catch (err) {
- // if fails then it is probably on Windows and lets try to create a junction
- fs.symlinkSync(path.join(__dirname, '..', '..', 'package') + '\\', packageDir, 'junction');
-}
-try {
- fs.symlinkSync('../../source/node_modules/mod-a', symlinkModADir, 'dir');
-} catch (err) {
- // if fails then it is probably on Windows and lets try to create a junction
- fs.symlinkSync(path.join(__dirname, '..', '..', 'source', 'node_modules', 'mod-a') + '\\', symlinkModADir, 'junction');
-}
-
-test('symlink', function (t) {
- t.plan(2);
-
- resolve('foo', { basedir: symlinkDir, preserveSymlinks: false }, function (err, res, pkg) {
- t.error(err);
- t.equal(res, path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js'));
- });
-});
-
-test('sync symlink when preserveSymlinks = true', function (t) {
- t.plan(4);
-
- resolve('foo', { basedir: symlinkDir }, function (err, res, pkg) {
- t.ok(err, 'there is an error');
- t.notOk(res, 'no result');
-
- t.equal(err && err.code, 'MODULE_NOT_FOUND', 'error code matches require.resolve');
- t.equal(
- err && err.message,
- 'Cannot find module \'foo\' from \'' + symlinkDir + '\'',
- 'can not find nonexistent module'
- );
- });
-});
-
-test('sync symlink', function (t) {
- var start = new Date();
- t.doesNotThrow(function () {
- t.equal(
- resolve.sync('foo', { basedir: symlinkDir, preserveSymlinks: false }),
- path.join(__dirname, 'resolver', 'symlinked', '_', 'node_modules', 'foo.js')
- );
- });
- t.ok(new Date() - start < 50, 'resolve.sync timedout');
- t.end();
-});
-
-test('sync symlink when preserveSymlinks = true', function (t) {
- t.throws(function () {
- resolve.sync('foo', { basedir: symlinkDir });
- }, /Cannot find module 'foo'/);
- t.end();
-});
-
-test('sync symlink from node_modules to other dir when preserveSymlinks = false', function (t) {
- var basedir = path.join(__dirname, 'resolver', 'symlinked', '_');
- var fn = resolve.sync('package', { basedir: basedir, preserveSymlinks: false });
-
- t.equal(fn, path.resolve(__dirname, 'resolver/symlinked/package/bar.js'));
- t.end();
-});
-
-test('async symlink from node_modules to other dir when preserveSymlinks = false', function (t) {
- t.plan(2);
- var basedir = path.join(__dirname, 'resolver', 'symlinked', '_');
- resolve('package', { basedir: basedir, preserveSymlinks: false }, function (err, result) {
- t.notOk(err, 'no error');
- t.equal(result, path.resolve(__dirname, 'resolver/symlinked/package/bar.js'));
- });
-});
-
-test('packageFilter', function (t) {
- function relative(x) {
- return path.relative(__dirname, x);
- }
-
- function testPackageFilter(preserveSymlinks) {
- return function (st) {
- st.plan('is 1.x' ? 3 : 5); // eslint-disable-line no-constant-condition
-
- var destMain = 'symlinks/dest/node_modules/mod-a/index.js';
- var destPkg = 'symlinks/dest/node_modules/mod-a/package.json';
- var sourceMain = 'symlinks/source/node_modules/mod-a/index.js';
- var sourcePkg = 'symlinks/source/node_modules/mod-a/package.json';
- var destDir = path.join(__dirname, 'symlinks', 'dest');
-
- /* eslint multiline-comment-style: 0 */
- /* v2.x will restore these tests
- var packageFilterPath = [];
- var actualPath = resolve.sync('mod-a', {
- basedir: destDir,
- preserveSymlinks: preserveSymlinks,
- packageFilter: function (pkg, pkgfile, dir) {
- packageFilterPath.push(pkgfile);
- }
- });
- st.equal(
- relative(actualPath),
- path.normalize(preserveSymlinks ? destMain : sourceMain),
- 'sync: actual path is correct'
- );
- st.deepEqual(
- map(packageFilterPath, relative),
- map(preserveSymlinks ? [destPkg, destPkg] : [sourcePkg, sourcePkg], path.normalize),
- 'sync: packageFilter pkgfile arg is correct'
- );
- */
-
- var asyncPackageFilterPath = [];
- resolve(
- 'mod-a',
- {
- basedir: destDir,
- preserveSymlinks: preserveSymlinks,
- packageFilter: function (pkg, pkgfile) {
- asyncPackageFilterPath.push(pkgfile);
- }
- },
- function (err, actualPath) {
- st.error(err, 'no error');
- st.equal(
- relative(actualPath),
- path.normalize(preserveSymlinks ? destMain : sourceMain),
- 'async: actual path is correct'
- );
- st.deepEqual(
- map(asyncPackageFilterPath, relative),
- map(
- preserveSymlinks ? [destPkg, destPkg, destPkg] : [sourcePkg, sourcePkg, sourcePkg],
- path.normalize
- ),
- 'async: packageFilter pkgfile arg is correct'
- );
- }
- );
- };
- }
-
- t.test('preserveSymlinks: false', testPackageFilter(false));
-
- t.test('preserveSymlinks: true', testPackageFilter(true));
-
- t.end();
-});
diff --git a/deps/npm/node_modules/smart-buffer/build/smartbuffer.js b/deps/npm/node_modules/smart-buffer/build/smartbuffer.js
index fc7d3aa026..5353ae11d3 100644
--- a/deps/npm/node_modules/smart-buffer/build/smartbuffer.js
+++ b/deps/npm/node_modules/smart-buffer/build/smartbuffer.js
@@ -33,7 +33,7 @@ class SmartBuffer {
// Check for initial Buffer
}
else if (options.buff) {
- if (options.buff instanceof Buffer) {
+ if (Buffer.isBuffer(options.buff)) {
this._buff = options.buff;
this.length = options.buff.length;
}
diff --git a/deps/npm/node_modules/smart-buffer/build/smartbuffer.js.map b/deps/npm/node_modules/smart-buffer/build/smartbuffer.js.map
index b4c68c7acf..37f0d6e16f 100644
--- a/deps/npm/node_modules/smart-buffer/build/smartbuffer.js.map
+++ b/deps/npm/node_modules/smart-buffer/build/smartbuffer.js.map
@@ -1 +1 @@
-{"version":3,"file":"smartbuffer.js","sourceRoot":"","sources":["../src/smartbuffer.ts"],"names":[],"mappings":"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"} \ No newline at end of file
+{"version":3,"file":"smartbuffer.js","sourceRoot":"","sources":["../src/smartbuffer.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/deps/npm/node_modules/smart-buffer/package.json b/deps/npm/node_modules/smart-buffer/package.json
index a6d68dd747..2f326f2489 100644
--- a/deps/npm/node_modules/smart-buffer/package.json
+++ b/deps/npm/node_modules/smart-buffer/package.json
@@ -1,8 +1,9 @@
{
"name": "smart-buffer",
- "version": "4.1.0",
+ "version": "4.2.0",
"description": "smart-buffer is a Buffer wrapper that adds automatic read & write offset tracking, string operations, data insertions, and more.",
"main": "build/smartbuffer.js",
+ "contributors": ["syvita"],
"homepage": "https://github.com/JoshGlazebrook/smart-buffer/",
"repository": {
"type": "git",
diff --git a/deps/npm/node_modules/socks-proxy-agent/dist/agent.js b/deps/npm/node_modules/socks-proxy-agent/dist/agent.js
index f779732bbc..acdde177ec 100644
--- a/deps/npm/node_modules/socks-proxy-agent/dist/agent.js
+++ b/deps/npm/node_modules/socks-proxy-agent/dist/agent.js
@@ -54,18 +54,18 @@ function parseSocksProxy(opts) {
// figure out if we want socks v4 or v5, based on the "protocol" used.
// Defaults to 5.
if (opts.protocol) {
- switch (opts.protocol) {
- case 'socks4:':
+ switch (opts.protocol.replace(':', '')) {
+ case 'socks4':
lookup = true;
// pass through
- case 'socks4a:':
+ case 'socks4a':
type = 4;
break;
- case 'socks5:':
+ case 'socks5':
lookup = true;
// pass through
- case 'socks:': // no version specified, default to 5h
- case 'socks5h:':
+ case 'socks': // no version specified, default to 5h
+ case 'socks5h':
type = 5;
break;
default:
@@ -85,7 +85,7 @@ function parseSocksProxy(opts) {
port,
type
};
- let userId = opts.userId;
+ let userId = opts.userId || opts.username;
let password = opts.password;
if (opts.auth) {
const auth = opts.auth.split(':');
@@ -137,7 +137,7 @@ class SocksProxyAgent extends agent_base_1.Agent {
callback(req, opts) {
return __awaiter(this, void 0, void 0, function* () {
const { lookup, proxy } = this;
- let { host, port } = opts;
+ let { host, port, timeout } = opts;
if (!host) {
throw new Error('No `host` defined!');
}
@@ -148,19 +148,17 @@ class SocksProxyAgent extends agent_base_1.Agent {
const socksOpts = {
proxy,
destination: { host, port },
- command: 'connect'
+ command: 'connect',
+ timeout
};
debug('Creating socks proxy connection: %o', socksOpts);
const { socket } = yield socks_1.SocksClient.createConnection(socksOpts);
debug('Successfully created socks proxy connection');
if (opts.secureEndpoint) {
- const servername = opts.servername || opts.host;
- if (!servername) {
- throw new Error('Could not determine "servername"');
- }
// The proxy is connecting to a TLS server, so upgrade
// this socket connection to a TLS connection.
debug('Upgrading socket connection to TLS');
+ const servername = opts.servername || opts.host;
return tls_1.default.connect(Object.assign(Object.assign({}, omit(opts, 'host', 'hostname', 'path', 'port')), { socket,
servername }));
}
diff --git a/deps/npm/node_modules/socks-proxy-agent/dist/agent.js.map b/deps/npm/node_modules/socks-proxy-agent/dist/agent.js.map
index 033d913eaf..63da267a03 100644
--- a/deps/npm/node_modules/socks-proxy-agent/dist/agent.js.map
+++ b/deps/npm/node_modules/socks-proxy-agent/dist/agent.js.map
@@ -1 +1 @@
-{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"} \ No newline at end of file
+{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/deps/npm/node_modules/socks-proxy-agent/dist/index.d.ts b/deps/npm/node_modules/socks-proxy-agent/dist/index.d.ts
index eb92e04ffe..8fe0e58884 100644
--- a/deps/npm/node_modules/socks-proxy-agent/dist/index.d.ts
+++ b/deps/npm/node_modules/socks-proxy-agent/dist/index.d.ts
@@ -8,6 +8,7 @@ declare namespace createSocksProxyAgent {
interface BaseSocksProxyAgentOptions {
host?: string | null;
port?: string | number | null;
+ username?: string | null;
}
export interface SocksProxyAgentOptions extends AgentOptions, BaseSocksProxyAgentOptions, Partial<Omit<Url & SocksProxy, keyof BaseSocksProxyAgentOptions>> {
}
diff --git a/deps/npm/node_modules/socks-proxy-agent/dist/index.js.map b/deps/npm/node_modules/socks-proxy-agent/dist/index.js.map
index 074fe255cd..56fa84868a 100644
--- a/deps/npm/node_modules/socks-proxy-agent/dist/index.js.map
+++ b/deps/npm/node_modules/socks-proxy-agent/dist/index.js.map
@@ -1 +1 @@
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAGA,oDAAuC;AAEvC,SAAS,qBAAqB,CAC7B,IAA2D;IAE3D,OAAO,IAAI,eAAgB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,WAAU,qBAAqB;IAYjB,qCAAe,GAAG,eAAgB,CAAC;IAEhD,qBAAqB,CAAC,SAAS,GAAG,eAAgB,CAAC,SAAS,CAAC;AAC9D,CAAC,EAfS,qBAAqB,KAArB,qBAAqB,QAe9B;AAED,iBAAS,qBAAqB,CAAC"} \ No newline at end of file
+{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAGA,oDAAuC;AAEvC,SAAS,qBAAqB,CAC7B,IAA2D;IAE3D,OAAO,IAAI,eAAgB,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC;AAED,WAAU,qBAAqB;IAajB,qCAAe,GAAG,eAAgB,CAAC;IAEhD,qBAAqB,CAAC,SAAS,GAAG,eAAgB,CAAC,SAAS,CAAC;AAC9D,CAAC,EAhBS,qBAAqB,KAArB,qBAAqB,QAgB9B;AAED,iBAAS,qBAAqB,CAAC"} \ No newline at end of file
diff --git a/deps/npm/node_modules/socks-proxy-agent/package.json b/deps/npm/node_modules/socks-proxy-agent/package.json
index b5e6dc8c44..b0a7445136 100644
--- a/deps/npm/node_modules/socks-proxy-agent/package.json
+++ b/deps/npm/node_modules/socks-proxy-agent/package.json
@@ -1,6 +1,6 @@
{
"name": "socks-proxy-agent",
- "version": "5.0.0",
+ "version": "6.0.0",
"description": "A SOCKS proxy `http.Agent` implementation for HTTP and HTTPS",
"main": "dist/index",
"typings": "dist/index",
@@ -35,30 +35,30 @@
"url": "https://github.com/TooTallNate/node-socks-proxy-agent/issues"
},
"dependencies": {
- "agent-base": "6",
- "debug": "4",
- "socks": "^2.3.3"
+ "agent-base": "^6.0.2",
+ "debug": "^4.3.1",
+ "socks": "^2.6.1"
},
"devDependencies": {
- "@types/debug": "4",
- "@types/node": "^12.12.11",
- "@typescript-eslint/eslint-plugin": "1.6.0",
- "@typescript-eslint/parser": "1.1.0",
- "eslint": "5.16.0",
- "eslint-config-airbnb": "17.1.0",
- "eslint-config-prettier": "4.1.0",
- "eslint-import-resolver-typescript": "1.1.1",
- "eslint-plugin-import": "2.16.0",
- "eslint-plugin-jsx-a11y": "6.2.1",
- "eslint-plugin-react": "7.12.4",
- "mocha": "^6.2.2",
- "proxy": "1",
- "raw-body": "^2.3.2",
- "rimraf": "^3.0.0",
+ "@types/debug": "latest",
+ "@types/node": "latest",
+ "@typescript-eslint/eslint-plugin": "latest",
+ "@typescript-eslint/parser": "latest",
+ "eslint": "latest",
+ "eslint-config-airbnb": "latest",
+ "eslint-config-prettier": "latest",
+ "eslint-import-resolver-typescript": "latest",
+ "eslint-plugin-import": "latest",
+ "eslint-plugin-jsx-a11y": "latest",
+ "eslint-plugin-react": "latest",
+ "mocha": "latest",
+ "proxy": "latest",
+ "raw-body": "latest",
+ "rimraf": "latest",
"socksv5": "TooTallNate/socksv5#fix/dstSock-close-event",
- "typescript": "^3.5.3"
+ "typescript": "latest"
},
"engines": {
- "node": ">= 6"
+ "node": ">= 10"
}
}
diff --git a/deps/npm/node_modules/spdx-license-ids/index.json b/deps/npm/node_modules/spdx-license-ids/index.json
index c2d5e017b2..7c498132d4 100644
--- a/deps/npm/node_modules/spdx-license-ids/index.json
+++ b/deps/npm/node_modules/spdx-license-ids/index.json
@@ -69,30 +69,40 @@
"CC-BY-1.0",
"CC-BY-2.0",
"CC-BY-2.5",
+ "CC-BY-2.5-AU",
"CC-BY-3.0",
"CC-BY-3.0-AT",
+ "CC-BY-3.0-DE",
+ "CC-BY-3.0-NL",
"CC-BY-3.0-US",
"CC-BY-4.0",
"CC-BY-NC-1.0",
"CC-BY-NC-2.0",
"CC-BY-NC-2.5",
"CC-BY-NC-3.0",
+ "CC-BY-NC-3.0-DE",
"CC-BY-NC-4.0",
"CC-BY-NC-ND-1.0",
"CC-BY-NC-ND-2.0",
"CC-BY-NC-ND-2.5",
"CC-BY-NC-ND-3.0",
+ "CC-BY-NC-ND-3.0-DE",
"CC-BY-NC-ND-3.0-IGO",
"CC-BY-NC-ND-4.0",
"CC-BY-NC-SA-1.0",
"CC-BY-NC-SA-2.0",
+ "CC-BY-NC-SA-2.0-FR",
+ "CC-BY-NC-SA-2.0-UK",
"CC-BY-NC-SA-2.5",
"CC-BY-NC-SA-3.0",
+ "CC-BY-NC-SA-3.0-DE",
+ "CC-BY-NC-SA-3.0-IGO",
"CC-BY-NC-SA-4.0",
"CC-BY-ND-1.0",
"CC-BY-ND-2.0",
"CC-BY-ND-2.5",
"CC-BY-ND-3.0",
+ "CC-BY-ND-3.0-DE",
"CC-BY-ND-4.0",
"CC-BY-SA-1.0",
"CC-BY-SA-2.0",
@@ -101,6 +111,7 @@
"CC-BY-SA-2.5",
"CC-BY-SA-3.0",
"CC-BY-SA-3.0-AT",
+ "CC-BY-SA-3.0-DE",
"CC-BY-SA-4.0",
"CC-PDDC",
"CC0-1.0",
@@ -108,6 +119,7 @@
"CDDL-1.1",
"CDL-1.0",
"CDLA-Permissive-1.0",
+ "CDLA-Permissive-2.0",
"CDLA-Sharing-1.0",
"CECILL-1.0",
"CECILL-1.1",
@@ -265,6 +277,7 @@
"NIST-PD",
"NIST-PD-fallback",
"NLOD-1.0",
+ "NLOD-2.0",
"NLPL",
"NOSL",
"NPL-1.0",
@@ -315,6 +328,7 @@
"OLDAP-2.8",
"OML",
"OPL-1.0",
+ "OPUBL-1.0",
"OSET-PL-2.1",
"OSL-1.0",
"OSL-1.1",
diff --git a/deps/npm/node_modules/spdx-license-ids/package.json b/deps/npm/node_modules/spdx-license-ids/package.json
index 5639091b87..1d696a7107 100644
--- a/deps/npm/node_modules/spdx-license-ids/package.json
+++ b/deps/npm/node_modules/spdx-license-ids/package.json
@@ -1,6 +1,6 @@
{
"name": "spdx-license-ids",
- "version": "3.0.9",
+ "version": "3.0.10",
"description": "A list of SPDX license identifiers",
"repository": "jslicense/spdx-license-ids",
"author": "Shinnosuke Watanabe (https://github.com/shinnn)",
diff --git a/deps/npm/node_modules/tar/lib/extract.js b/deps/npm/node_modules/tar/lib/extract.js
index f269145ede..98e946ec5b 100644
--- a/deps/npm/node_modules/tar/lib/extract.js
+++ b/deps/npm/node_modules/tar/lib/extract.js
@@ -6,6 +6,7 @@ const Unpack = require('./unpack.js')
const fs = require('fs')
const fsm = require('fs-minipass')
const path = require('path')
+const stripSlash = require('./strip-trailing-slashes.js')
module.exports = (opt_, files, cb) => {
if (typeof opt_ === 'function')
@@ -41,7 +42,7 @@ module.exports = (opt_, files, cb) => {
// construct a filter that limits the file entries listed
// include child entries if a dir is included
const filesFilter = (opt, files) => {
- const map = new Map(files.map(f => [f.replace(/\/+$/, ''), true]))
+ const map = new Map(files.map(f => [stripSlash(f), true]))
const filter = opt.filter
const mapHas = (file, r) => {
@@ -55,8 +56,8 @@ const filesFilter = (opt, files) => {
}
opt.filter = filter
- ? (file, entry) => filter(file, entry) && mapHas(file.replace(/\/+$/, ''))
- : file => mapHas(file.replace(/\/+$/, ''))
+ ? (file, entry) => filter(file, entry) && mapHas(stripSlash(file))
+ : file => mapHas(stripSlash(file))
}
const extractFileSync = opt => {
diff --git a/deps/npm/node_modules/tar/lib/list.js b/deps/npm/node_modules/tar/lib/list.js
index 702cfea808..a0c1cf2fbc 100644
--- a/deps/npm/node_modules/tar/lib/list.js
+++ b/deps/npm/node_modules/tar/lib/list.js
@@ -9,6 +9,7 @@ const Parser = require('./parse.js')
const fs = require('fs')
const fsm = require('fs-minipass')
const path = require('path')
+const stripSlash = require('./strip-trailing-slashes.js')
module.exports = (opt_, files, cb) => {
if (typeof opt_ === 'function')
@@ -54,7 +55,7 @@ const onentryFunction = opt => {
// construct a filter that limits the file entries listed
// include child entries if a dir is included
const filesFilter = (opt, files) => {
- const map = new Map(files.map(f => [f.replace(/\/+$/, ''), true]))
+ const map = new Map(files.map(f => [stripSlash(f), true]))
const filter = opt.filter
const mapHas = (file, r) => {
@@ -68,8 +69,8 @@ const filesFilter = (opt, files) => {
}
opt.filter = filter
- ? (file, entry) => filter(file, entry) && mapHas(file.replace(/\/+$/, ''))
- : file => mapHas(file.replace(/\/+$/, ''))
+ ? (file, entry) => filter(file, entry) && mapHas(stripSlash(file))
+ : file => mapHas(stripSlash(file))
}
const listFileSync = opt => {
diff --git a/deps/npm/node_modules/tar/lib/mkdir.js b/deps/npm/node_modules/tar/lib/mkdir.js
index aed398fcdc..a0719e6c36 100644
--- a/deps/npm/node_modules/tar/lib/mkdir.js
+++ b/deps/npm/node_modules/tar/lib/mkdir.js
@@ -8,6 +8,7 @@ const mkdirp = require('mkdirp')
const fs = require('fs')
const path = require('path')
const chownr = require('chownr')
+const normPath = require('./normalize-windows-path.js')
class SymlinkError extends Error {
constructor (symlink, path) {
@@ -33,7 +34,20 @@ class CwdError extends Error {
}
}
+const cGet = (cache, key) => cache.get(normPath(key))
+const cSet = (cache, key, val) => cache.set(normPath(key), val)
+
+const checkCwd = (dir, cb) => {
+ fs.stat(dir, (er, st) => {
+ if (er || !st.isDirectory())
+ er = new CwdError(dir, er && er.code || 'ENOTDIR')
+ cb(er)
+ })
+}
+
module.exports = (dir, opt, cb) => {
+ dir = normPath(dir)
+
// if there's any overlap between mask and mode,
// then we'll need an explicit chmod
const umask = opt.umask
@@ -49,13 +63,13 @@ module.exports = (dir, opt, cb) => {
const preserve = opt.preserve
const unlink = opt.unlink
const cache = opt.cache
- const cwd = opt.cwd
+ const cwd = normPath(opt.cwd)
const done = (er, created) => {
if (er)
cb(er)
else {
- cache.set(dir, true)
+ cSet(cache, dir, true)
if (created && doChown)
chownr(created, uid, gid, er => done(er))
else if (needChmod)
@@ -65,22 +79,17 @@ module.exports = (dir, opt, cb) => {
}
}
- if (cache && cache.get(dir) === true)
+ if (cache && cGet(cache, dir) === true)
return done()
- if (dir === cwd) {
- return fs.stat(dir, (er, st) => {
- if (er || !st.isDirectory())
- er = new CwdError(dir, er && er.code || 'ENOTDIR')
- done(er)
- })
- }
+ if (dir === cwd)
+ return checkCwd(dir, done)
if (preserve)
return mkdirp(dir, {mode}).then(made => done(null, made), done)
- const sub = path.relative(cwd, dir)
- const parts = sub.split(/\/|\\/)
+ const sub = normPath(path.relative(cwd, dir))
+ const parts = sub.split('/')
mkdir_(cwd, parts, mode, cache, unlink, cwd, null, done)
}
@@ -88,22 +97,19 @@ const mkdir_ = (base, parts, mode, cache, unlink, cwd, created, cb) => {
if (!parts.length)
return cb(null, created)
const p = parts.shift()
- const part = base + '/' + p
- if (cache.get(part))
+ const part = normPath(path.resolve(base + '/' + p))
+ if (cGet(cache, part))
return mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)
fs.mkdir(part, mode, onmkdir(part, parts, mode, cache, unlink, cwd, created, cb))
}
const onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => er => {
if (er) {
- if (er.path && path.dirname(er.path) === cwd &&
- (er.code === 'ENOTDIR' || er.code === 'ENOENT'))
- return cb(new CwdError(cwd, er.code))
-
fs.lstat(part, (statEr, st) => {
- if (statEr)
+ if (statEr) {
+ statEr.path = statEr.path && normPath(statEr.path)
cb(statEr)
- else if (st.isDirectory())
+ } else if (st.isDirectory())
mkdir_(part, parts, mode, cache, unlink, cwd, created, cb)
else if (unlink) {
fs.unlink(part, er => {
@@ -122,7 +128,21 @@ const onmkdir = (part, parts, mode, cache, unlink, cwd, created, cb) => er => {
}
}
+const checkCwdSync = dir => {
+ let ok = false
+ let code = 'ENOTDIR'
+ try {
+ ok = fs.statSync(dir).isDirectory()
+ } catch (er) {
+ code = er.code
+ } finally {
+ if (!ok)
+ throw new CwdError(dir, code)
+ }
+}
+
module.exports.sync = (dir, opt) => {
+ dir = normPath(dir)
// if there's any overlap between mask and mode,
// then we'll need an explicit chmod
const umask = opt.umask
@@ -138,64 +158,51 @@ module.exports.sync = (dir, opt) => {
const preserve = opt.preserve
const unlink = opt.unlink
const cache = opt.cache
- const cwd = opt.cwd
+ const cwd = normPath(opt.cwd)
const done = (created) => {
- cache.set(dir, true)
+ cSet(cache, dir, true)
if (created && doChown)
chownr.sync(created, uid, gid)
if (needChmod)
fs.chmodSync(dir, mode)
}
- if (cache && cache.get(dir) === true)
+ if (cache && cGet(cache, dir) === true)
return done()
if (dir === cwd) {
- let ok = false
- let code = 'ENOTDIR'
- try {
- ok = fs.statSync(dir).isDirectory()
- } catch (er) {
- code = er.code
- } finally {
- if (!ok)
- throw new CwdError(dir, code)
- }
- done()
- return
+ checkCwdSync(cwd)
+ return done()
}
if (preserve)
return done(mkdirp.sync(dir, mode))
- const sub = path.relative(cwd, dir)
- const parts = sub.split(/\/|\\/)
+ const sub = normPath(path.relative(cwd, dir))
+ const parts = sub.split('/')
let created = null
for (let p = parts.shift(), part = cwd;
p && (part += '/' + p);
p = parts.shift()) {
- if (cache.get(part))
+ part = normPath(path.resolve(part))
+ if (cGet(cache, part))
continue
try {
fs.mkdirSync(part, mode)
created = created || part
- cache.set(part, true)
+ cSet(cache, part, true)
} catch (er) {
- if (er.path && path.dirname(er.path) === cwd &&
- (er.code === 'ENOTDIR' || er.code === 'ENOENT'))
- return new CwdError(cwd, er.code)
-
const st = fs.lstatSync(part)
if (st.isDirectory()) {
- cache.set(part, true)
+ cSet(cache, part, true)
continue
} else if (unlink) {
fs.unlinkSync(part)
fs.mkdirSync(part, mode)
created = created || part
- cache.set(part, true)
+ cSet(cache, part, true)
continue
} else if (st.isSymbolicLink())
return new SymlinkError(part, part + '/' + parts.join('/'))
diff --git a/deps/npm/node_modules/tar/lib/normalize-windows-path.js b/deps/npm/node_modules/tar/lib/normalize-windows-path.js
new file mode 100644
index 0000000000..eb13ba01b7
--- /dev/null
+++ b/deps/npm/node_modules/tar/lib/normalize-windows-path.js
@@ -0,0 +1,8 @@
+// on windows, either \ or / are valid directory separators.
+// on unix, \ is a valid character in filenames.
+// so, on windows, and only on windows, we replace all \ chars with /,
+// so that we can use / as our one and only directory separator char.
+
+const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
+module.exports = platform !== 'win32' ? p => p
+ : p => p && p.replace(/\\/g, '/')
diff --git a/deps/npm/node_modules/tar/lib/pack.js b/deps/npm/node_modules/tar/lib/pack.js
index 492fe18ec4..9522c10bfe 100644
--- a/deps/npm/node_modules/tar/lib/pack.js
+++ b/deps/npm/node_modules/tar/lib/pack.js
@@ -54,6 +54,7 @@ const ONDRAIN = Symbol('ondrain')
const fs = require('fs')
const path = require('path')
const warner = require('./warn-mixin.js')
+const normPath = require('./normalize-windows-path.js')
const Pack = warner(class Pack extends MiniPass {
constructor (opt) {
@@ -66,7 +67,7 @@ const Pack = warner(class Pack extends MiniPass {
this.preservePaths = !!opt.preservePaths
this.strict = !!opt.strict
this.noPax = !!opt.noPax
- this.prefix = (opt.prefix || '').replace(/(\\|\/)+$/, '')
+ this.prefix = normPath(opt.prefix || '')
this.linkCache = opt.linkCache || new Map()
this.statCache = opt.statCache || new Map()
this.readdirCache = opt.readdirCache || new Map()
@@ -133,10 +134,7 @@ const Pack = warner(class Pack extends MiniPass {
}
[ADDTARENTRY] (p) {
- const absolute = path.resolve(this.cwd, p.path)
- if (this.prefix)
- p.path = this.prefix + '/' + p.path.replace(/^\.(\/+|$)/, '')
-
+ const absolute = normPath(path.resolve(this.cwd, p.path))
// in this case, we don't have to wait for the stat
if (!this.filter(p.path, p))
p.resume()
@@ -152,10 +150,7 @@ const Pack = warner(class Pack extends MiniPass {
}
[ADDFSENTRY] (p) {
- const absolute = path.resolve(this.cwd, p)
- if (this.prefix)
- p = this.prefix + '/' + p.replace(/^\.(\/+|$)/, '')
-
+ const absolute = normPath(path.resolve(this.cwd, p))
this[QUEUE].push(new PackJob(p, absolute))
this[PROCESS]()
}
@@ -298,6 +293,7 @@ const Pack = warner(class Pack extends MiniPass {
statCache: this.statCache,
noMtime: this.noMtime,
mtime: this.mtime,
+ prefix: this.prefix,
}
}
@@ -323,10 +319,7 @@ const Pack = warner(class Pack extends MiniPass {
if (job.readdir) {
job.readdir.forEach(entry => {
- const p = this.prefix ?
- job.path.slice(this.prefix.length + 1) || './'
- : job.path
-
+ const p = job.path
const base = p === './' ? '' : p.replace(/\/*$/, '/')
this[ADDFSENTRY](base + entry)
})
@@ -381,10 +374,7 @@ class PackSync extends Pack {
if (job.readdir) {
job.readdir.forEach(entry => {
- const p = this.prefix ?
- job.path.slice(this.prefix.length + 1) || './'
- : job.path
-
+ const p = job.path
const base = p === './' ? '' : p.replace(/\/*$/, '/')
this[ADDFSENTRY](base + entry)
})
diff --git a/deps/npm/node_modules/tar/lib/path-reservations.js b/deps/npm/node_modules/tar/lib/path-reservations.js
index c0a16b0a1f..8d0ead9b60 100644
--- a/deps/npm/node_modules/tar/lib/path-reservations.js
+++ b/deps/npm/node_modules/tar/lib/path-reservations.js
@@ -7,6 +7,12 @@
// while still allowing maximal safe parallelization.
const assert = require('assert')
+const normPath = require('./normalize-windows-path.js')
+const stripSlashes = require('./strip-trailing-slashes.js')
+const { join } = require('path')
+
+const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
+const isWindows = platform === 'win32'
module.exports = () => {
// path => [function or Set]
@@ -18,10 +24,16 @@ module.exports = () => {
const reservations = new Map()
// return a set of parent dirs for a given path
- const { join } = require('path')
- const getDirs = path =>
- join(path).split(/[\\/]/).slice(0, -1).reduce((set, path) =>
- set.length ? set.concat(join(set[set.length - 1], path)) : [path], [])
+ // '/a/b/c/d' -> ['/', '/a', '/a/b', '/a/b/c', '/a/b/c/d']
+ const getDirs = path => {
+ const dirs = path.split('/').slice(0, -1).reduce((set, path) => {
+ if (set.length)
+ path = normPath(join(set[set.length - 1], path))
+ set.push(path || '/')
+ return set
+ }, [])
+ return dirs
+ }
// functions currently running
const running = new Set()
@@ -97,6 +109,18 @@ module.exports = () => {
}
const reserve = (paths, fn) => {
+ // collide on matches across case and unicode normalization
+ // On windows, thanks to the magic of 8.3 shortnames, it is fundamentally
+ // impossible to determine whether two paths refer to the same thing on
+ // disk, without asking the kernel for a shortname.
+ // So, we just pretend that every path matches every other path here,
+ // effectively removing all parallelization on windows.
+ paths = isWindows ? ['win32 parallelization disabled'] : paths.map(p => {
+ return stripSlashes(normPath(join(p)))
+ .normalize('NFKD')
+ .toLowerCase()
+ })
+
const dirs = new Set(
paths.map(path => getDirs(path)).reduce((a, b) => a.concat(b))
)
diff --git a/deps/npm/node_modules/tar/lib/read-entry.js b/deps/npm/node_modules/tar/lib/read-entry.js
index 6661cba5ff..183a6050ba 100644
--- a/deps/npm/node_modules/tar/lib/read-entry.js
+++ b/deps/npm/node_modules/tar/lib/read-entry.js
@@ -1,5 +1,6 @@
'use strict'
const MiniPass = require('minipass')
+const normPath = require('./normalize-windows-path.js')
const SLURP = Symbol('slurp')
module.exports = class ReadEntry extends MiniPass {
@@ -46,7 +47,7 @@ module.exports = class ReadEntry extends MiniPass {
this.ignore = true
}
- this.path = header.path
+ this.path = normPath(header.path)
this.mode = header.mode
if (this.mode)
this.mode = this.mode & 0o7777
@@ -58,7 +59,7 @@ module.exports = class ReadEntry extends MiniPass {
this.mtime = header.mtime
this.atime = header.atime
this.ctime = header.ctime
- this.linkpath = header.linkpath
+ this.linkpath = normPath(header.linkpath)
this.uname = header.uname
this.gname = header.gname
@@ -93,7 +94,7 @@ module.exports = class ReadEntry extends MiniPass {
// a global extended header, because that's weird.
if (ex[k] !== null && ex[k] !== undefined &&
!(global && k === 'path'))
- this[k] = ex[k]
+ this[k] = k === 'path' || k === 'linkpath' ? normPath(ex[k]) : ex[k]
}
}
}
diff --git a/deps/npm/node_modules/tar/lib/replace.js b/deps/npm/node_modules/tar/lib/replace.js
index e5e2a42553..1374f3f29c 100644
--- a/deps/npm/node_modules/tar/lib/replace.js
+++ b/deps/npm/node_modules/tar/lib/replace.js
@@ -170,7 +170,8 @@ const replace = (opt, files, cb) => {
fs.fstat(fd, (er, st) => {
if (er)
- return reject(er)
+ return fs.close(fd, () => reject(er))
+
getPos(fd, st.size, (er, position) => {
if (er)
return reject(er)
diff --git a/deps/npm/node_modules/tar/lib/strip-absolute-path.js b/deps/npm/node_modules/tar/lib/strip-absolute-path.js
new file mode 100644
index 0000000000..1aa2d2aec5
--- /dev/null
+++ b/deps/npm/node_modules/tar/lib/strip-absolute-path.js
@@ -0,0 +1,24 @@
+// unix absolute paths are also absolute on win32, so we use this for both
+const { isAbsolute, parse } = require('path').win32
+
+// returns [root, stripped]
+// Note that windows will think that //x/y/z/a has a "root" of //x/y, and in
+// those cases, we want to sanitize it to x/y/z/a, not z/a, so we strip /
+// explicitly if it's the first character.
+// drive-specific relative paths on Windows get their root stripped off even
+// though they are not absolute, so `c:../foo` becomes ['c:', '../foo']
+module.exports = path => {
+ let r = ''
+
+ let parsed = parse(path)
+ while (isAbsolute(path) || parsed.root) {
+ // windows will think that //x/y/z has a "root" of //x/y/
+ // but strip the //?/C:/ off of //?/C:/path
+ const root = path.charAt(0) === '/' && path.slice(0, 4) !== '//?/' ? '/'
+ : parsed.root
+ path = path.substr(root.length)
+ r += root
+ parsed = parse(path)
+ }
+ return [r, path]
+}
diff --git a/deps/npm/node_modules/tar/lib/strip-trailing-slashes.js b/deps/npm/node_modules/tar/lib/strip-trailing-slashes.js
new file mode 100644
index 0000000000..f702ed5a5c
--- /dev/null
+++ b/deps/npm/node_modules/tar/lib/strip-trailing-slashes.js
@@ -0,0 +1,24 @@
+// this is the only approach that was significantly faster than using
+// str.replace(/\/+$/, '') for strings ending with a lot of / chars and
+// containing multiple / chars.
+const batchStrings = [
+ '/'.repeat(1024),
+ '/'.repeat(512),
+ '/'.repeat(256),
+ '/'.repeat(128),
+ '/'.repeat(64),
+ '/'.repeat(32),
+ '/'.repeat(16),
+ '/'.repeat(8),
+ '/'.repeat(4),
+ '/'.repeat(2),
+ '/',
+]
+
+module.exports = str => {
+ for (const s of batchStrings) {
+ while (str.length >= s.length && str.slice(-1 * s.length) === s)
+ str = str.slice(0, -1 * s.length)
+ }
+ return str
+}
diff --git a/deps/npm/node_modules/tar/lib/unpack.js b/deps/npm/node_modules/tar/lib/unpack.js
index 7d4b79d9eb..7f397f1037 100644
--- a/deps/npm/node_modules/tar/lib/unpack.js
+++ b/deps/npm/node_modules/tar/lib/unpack.js
@@ -14,10 +14,14 @@ const path = require('path')
const mkdir = require('./mkdir.js')
const wc = require('./winchars.js')
const pathReservations = require('./path-reservations.js')
+const stripAbsolutePath = require('./strip-absolute-path.js')
+const normPath = require('./normalize-windows-path.js')
+const stripSlash = require('./strip-trailing-slashes.js')
const ONENTRY = Symbol('onEntry')
const CHECKFS = Symbol('checkFs')
const CHECKFS2 = Symbol('checkFs2')
+const PRUNECACHE = Symbol('pruneCache')
const ISREUSABLE = Symbol('isReusable')
const MAKEFS = Symbol('makeFs')
const FILE = Symbol('file')
@@ -38,13 +42,11 @@ const SKIP = Symbol('skip')
const DOCHOWN = Symbol('doChown')
const UID = Symbol('uid')
const GID = Symbol('gid')
+const CHECKED_CWD = Symbol('checkedCwd')
const crypto = require('crypto')
const getFlag = require('./get-write-flag.js')
-
-/* istanbul ignore next */
-const neverCalled = () => {
- throw new Error('sync function called cb somehow?!?')
-}
+const platform = process.env.TESTING_TAR_FAKE_PLATFORM || process.platform
+const isWindows = platform === 'win32'
// Unlinks on Windows are not atomic.
//
@@ -63,7 +65,7 @@ const neverCalled = () => {
// See: https://github.com/npm/node-tar/issues/183
/* istanbul ignore next */
const unlinkFile = (path, cb) => {
- if (process.platform !== 'win32')
+ if (!isWindows)
return fs.unlink(path, cb)
const name = path + '.DELETE.' + crypto.randomBytes(16).toString('hex')
@@ -76,7 +78,7 @@ const unlinkFile = (path, cb) => {
/* istanbul ignore next */
const unlinkFileSync = path => {
- if (process.platform !== 'win32')
+ if (!isWindows)
return fs.unlinkSync(path)
const name = path + '.DELETE.' + crypto.randomBytes(16).toString('hex')
@@ -90,6 +92,33 @@ const uint32 = (a, b, c) =>
: b === b >>> 0 ? b
: c
+// clear the cache if it's a case-insensitive unicode-squashing match.
+// we can't know if the current file system is case-sensitive or supports
+// unicode fully, so we check for similarity on the maximally compatible
+// representation. Err on the side of pruning, since all it's doing is
+// preventing lstats, and it's not the end of the world if we get a false
+// positive.
+// Note that on windows, we always drop the entire cache whenever a
+// symbolic link is encountered, because 8.3 filenames are impossible
+// to reason about, and collisions are hazards rather than just failures.
+const cacheKeyNormalize = path => stripSlash(normPath(path))
+ .normalize('NFKD')
+ .toLowerCase()
+
+const pruneCache = (cache, abs) => {
+ abs = cacheKeyNormalize(abs)
+ for (const path of cache.keys()) {
+ const pnorm = cacheKeyNormalize(path)
+ if (pnorm === abs || pnorm.indexOf(abs + '/') === 0)
+ cache.delete(path)
+ }
+}
+
+const dropCache = cache => {
+ for (const key of cache.keys())
+ cache.delete(key)
+}
+
class Unpack extends Parser {
constructor (opt) {
if (!opt)
@@ -102,6 +131,8 @@ class Unpack extends Parser {
super(opt)
+ this[CHECKED_CWD] = false
+
this.reservations = pathReservations()
this.transform = typeof opt.transform === 'function' ? opt.transform : null
@@ -147,7 +178,7 @@ class Unpack extends Parser {
this.forceChown = opt.forceChown === true
// turn ><?| in filenames into 0xf000-higher encoded forms
- this.win32 = !!opt.win32 || process.platform === 'win32'
+ this.win32 = !!opt.win32 || isWindows
// do not unpack over files that are newer than what's in the archive
this.newer = !!opt.newer
@@ -167,7 +198,7 @@ class Unpack extends Parser {
// links, and removes symlink directories rather than erroring
this.unlink = !!opt.unlink
- this.cwd = path.resolve(opt.cwd || process.cwd())
+ this.cwd = normPath(path.resolve(opt.cwd || process.cwd()))
this.strip = +opt.strip || 0
// if we're not chmodding, then we don't need the process umask
this.processUmask = opt.noChmod ? 0 : process.umask()
@@ -200,21 +231,24 @@ class Unpack extends Parser {
[CHECKPATH] (entry) {
if (this.strip) {
- const parts = entry.path.split(/\/|\\/)
+ const parts = normPath(entry.path).split('/')
if (parts.length < this.strip)
return false
entry.path = parts.slice(this.strip).join('/')
if (entry.type === 'Link') {
- const linkparts = entry.linkpath.split(/\/|\\/)
+ const linkparts = normPath(entry.linkpath).split('/')
if (linkparts.length >= this.strip)
entry.linkpath = linkparts.slice(this.strip).join('/')
+ else
+ return false
}
}
if (!this.preservePaths) {
- const p = entry.path
- if (p.match(/(^|\/|\\)\.\.(\\|\/|$)/)) {
+ const p = normPath(entry.path)
+ const parts = p.split('/')
+ if (parts.includes('..') || isWindows && /^[a-z]:\.\.$/i.test(parts[0])) {
this.warn('TAR_ENTRY_ERROR', `path contains '..'`, {
entry,
path: p,
@@ -222,31 +256,53 @@ class Unpack extends Parser {
return false
}
- // absolutes on posix are also absolutes on win32
- // so we only need to test this one to get both
- if (path.win32.isAbsolute(p)) {
- const parsed = path.win32.parse(p)
- entry.path = p.substr(parsed.root.length)
- const r = parsed.root
- this.warn('TAR_ENTRY_INFO', `stripping ${r} from absolute path`, {
+ // strip off the root
+ const [root, stripped] = stripAbsolutePath(p)
+ if (root) {
+ entry.path = stripped
+ this.warn('TAR_ENTRY_INFO', `stripping ${root} from absolute path`, {
entry,
path: p,
})
}
}
+ if (path.isAbsolute(entry.path))
+ entry.absolute = normPath(path.resolve(entry.path))
+ else
+ entry.absolute = normPath(path.resolve(this.cwd, entry.path))
+
+ // if we somehow ended up with a path that escapes the cwd, and we are
+ // not in preservePaths mode, then something is fishy! This should have
+ // been prevented above, so ignore this for coverage.
+ /* istanbul ignore if - defense in depth */
+ if (!this.preservePaths &&
+ entry.absolute.indexOf(this.cwd + '/') !== 0 &&
+ entry.absolute !== this.cwd) {
+ this.warn('TAR_ENTRY_ERROR', 'path escaped extraction target', {
+ entry,
+ path: normPath(entry.path),
+ resolvedPath: entry.absolute,
+ cwd: this.cwd,
+ })
+ return false
+ }
+
+ // an archive can set properties on the extraction directory, but it
+ // may not replace the cwd with a different kind of thing entirely.
+ if (entry.absolute === this.cwd &&
+ entry.type !== 'Directory' &&
+ entry.type !== 'GNUDumpDir')
+ return false
+
// only encode : chars that aren't drive letter indicators
if (this.win32) {
- const parsed = path.win32.parse(entry.path)
- entry.path = parsed.root === '' ? wc.encode(entry.path)
- : parsed.root + wc.encode(entry.path.substr(parsed.root.length))
+ const { root: aRoot } = path.win32.parse(entry.absolute)
+ entry.absolute = aRoot + wc.encode(entry.absolute.substr(aRoot.length))
+ const { root: pRoot } = path.win32.parse(entry.path)
+ entry.path = pRoot + wc.encode(entry.path.substr(pRoot.length))
}
- if (path.isAbsolute(entry.path))
- entry.absolute = entry.path
- else
- entry.absolute = path.resolve(this.cwd, entry.path)
-
return true
}
@@ -291,7 +347,7 @@ class Unpack extends Parser {
}
[MKDIR] (dir, mode, cb) {
- mkdir(dir, {
+ mkdir(normPath(dir), {
uid: this.uid,
gid: this.gid,
processUid: this.processUid,
@@ -333,17 +389,37 @@ class Unpack extends Parser {
mode: mode,
autoClose: false,
})
- stream.on('error', er => this[ONERROR](er, entry))
+ stream.on('error', er => {
+ if (stream.fd)
+ fs.close(stream.fd, () => {})
+
+ // flush all the data out so that we aren't left hanging
+ // if the error wasn't actually fatal. otherwise the parse
+ // is blocked, and we never proceed.
+ stream.write = () => true
+ this[ONERROR](er, entry)
+ fullyDone()
+ })
let actions = 1
const done = er => {
- if (er)
- return this[ONERROR](er, entry)
+ if (er) {
+ /* istanbul ignore else - we should always have a fd by now */
+ if (stream.fd)
+ fs.close(stream.fd, () => {})
+
+ this[ONERROR](er, entry)
+ fullyDone()
+ return
+ }
if (--actions === 0) {
fs.close(stream.fd, er => {
+ if (er)
+ this[ONERROR](er, entry)
+ else
+ this[UNPEND]()
fullyDone()
- er ? this[ONERROR](er, entry) : this[UNPEND]()
})
}
}
@@ -378,7 +454,10 @@ class Unpack extends Parser {
const tx = this.transform ? this.transform(entry) || entry : entry
if (tx !== entry) {
- tx.on('error', er => this[ONERROR](er, entry))
+ tx.on('error', er => {
+ this[ONERROR](er, entry)
+ fullyDone()
+ })
entry.pipe(tx)
}
tx.pipe(stream)
@@ -388,8 +467,9 @@ class Unpack extends Parser {
const mode = entry.mode & 0o7777 || this.dmode
this[MKDIR](entry.absolute, mode, er => {
if (er) {
+ this[ONERROR](er, entry)
fullyDone()
- return this[ONERROR](er, entry)
+ return
}
let actions = 1
@@ -427,7 +507,8 @@ class Unpack extends Parser {
}
[HARDLINK] (entry, done) {
- this[LINK](entry, path.resolve(this.cwd, entry.linkpath), 'link', done)
+ const linkpath = normPath(path.resolve(this.cwd, entry.linkpath))
+ this[LINK](entry, linkpath, 'link', done)
}
[PEND] () {
@@ -452,7 +533,7 @@ class Unpack extends Parser {
!this.unlink &&
st.isFile() &&
st.nlink <= 1 &&
- process.platform !== 'win32'
+ !isWindows
}
// check if a thing is there, and if so, try to clobber it
@@ -464,38 +545,115 @@ class Unpack extends Parser {
this.reservations.reserve(paths, done => this[CHECKFS2](entry, done))
}
- [CHECKFS2] (entry, done) {
- this[MKDIR](path.dirname(entry.absolute), this.dmode, er => {
- if (er) {
- done()
- return this[ONERROR](er, entry)
+ [PRUNECACHE] (entry) {
+ // if we are not creating a directory, and the path is in the dirCache,
+ // then that means we are about to delete the directory we created
+ // previously, and it is no longer going to be a directory, and neither
+ // is any of its children.
+ // If a symbolic link is encountered, all bets are off. There is no
+ // reasonable way to sanitize the cache in such a way we will be able to
+ // avoid having filesystem collisions. If this happens with a non-symlink
+ // entry, it'll just fail to unpack, but a symlink to a directory, using an
+ // 8.3 shortname or certain unicode attacks, can evade detection and lead
+ // to arbitrary writes to anywhere on the system.
+ if (entry.type === 'SymbolicLink')
+ dropCache(this.dirCache)
+ else if (entry.type !== 'Directory')
+ pruneCache(this.dirCache, entry.absolute)
+ }
+
+ [CHECKFS2] (entry, fullyDone) {
+ this[PRUNECACHE](entry)
+
+ const done = er => {
+ this[PRUNECACHE](entry)
+ fullyDone(er)
+ }
+
+ const checkCwd = () => {
+ this[MKDIR](this.cwd, this.dmode, er => {
+ if (er) {
+ this[ONERROR](er, entry)
+ done()
+ return
+ }
+ this[CHECKED_CWD] = true
+ start()
+ })
+ }
+
+ const start = () => {
+ if (entry.absolute !== this.cwd) {
+ const parent = normPath(path.dirname(entry.absolute))
+ if (parent !== this.cwd) {
+ return this[MKDIR](parent, this.dmode, er => {
+ if (er) {
+ this[ONERROR](er, entry)
+ done()
+ return
+ }
+ afterMakeParent()
+ })
+ }
}
- fs.lstat(entry.absolute, (er, st) => {
+ afterMakeParent()
+ }
+
+ const afterMakeParent = () => {
+ fs.lstat(entry.absolute, (lstatEr, st) => {
if (st && (this.keep || this.newer && st.mtime > entry.mtime)) {
this[SKIP](entry)
done()
- } else if (er || this[ISREUSABLE](entry, st))
- this[MAKEFS](null, entry, done)
+ return
+ }
+ if (lstatEr || this[ISREUSABLE](entry, st))
+ return this[MAKEFS](null, entry, done)
- else if (st.isDirectory()) {
+ if (st.isDirectory()) {
if (entry.type === 'Directory') {
- if (!this.noChmod && (!entry.mode || (st.mode & 0o7777) === entry.mode))
- this[MAKEFS](null, entry, done)
- else {
- fs.chmod(entry.absolute, entry.mode,
- er => this[MAKEFS](er, entry, done))
- }
- } else
- fs.rmdir(entry.absolute, er => this[MAKEFS](er, entry, done))
- } else
- unlinkFile(entry.absolute, er => this[MAKEFS](er, entry, done))
+ const needChmod = !this.noChmod &&
+ entry.mode &&
+ (st.mode & 0o7777) !== entry.mode
+ const afterChmod = er => this[MAKEFS](er, entry, done)
+ if (!needChmod)
+ return afterChmod()
+ return fs.chmod(entry.absolute, entry.mode, afterChmod)
+ }
+ // Not a dir entry, have to remove it.
+ // NB: the only way to end up with an entry that is the cwd
+ // itself, in such a way that == does not detect, is a
+ // tricky windows absolute path with UNC or 8.3 parts (and
+ // preservePaths:true, or else it will have been stripped).
+ // In that case, the user has opted out of path protections
+ // explicitly, so if they blow away the cwd, c'est la vie.
+ if (entry.absolute !== this.cwd) {
+ return fs.rmdir(entry.absolute, er =>
+ this[MAKEFS](er, entry, done))
+ }
+ }
+
+ // not a dir, and not reusable
+ // don't remove if the cwd, we want that error
+ if (entry.absolute === this.cwd)
+ return this[MAKEFS](null, entry, done)
+
+ unlinkFile(entry.absolute, er =>
+ this[MAKEFS](er, entry, done))
})
- })
+ }
+
+ if (this[CHECKED_CWD])
+ start()
+ else
+ checkCwd()
}
[MAKEFS] (er, entry, done) {
- if (er)
- return this[ONERROR](er, entry)
+ if (er) {
+ this[ONERROR](er, entry)
+ done()
+ return
+ }
switch (entry.type) {
case 'File':
@@ -516,49 +674,82 @@ class Unpack extends Parser {
}
[LINK] (entry, linkpath, link, done) {
- // XXX: get the type ('file' or 'dir') for windows
+ // XXX: get the type ('symlink' or 'junction') for windows
fs[link](linkpath, entry.absolute, er => {
if (er)
- return this[ONERROR](er, entry)
+ this[ONERROR](er, entry)
+ else {
+ this[UNPEND]()
+ entry.resume()
+ }
done()
- this[UNPEND]()
- entry.resume()
})
}
}
+const callSync = fn => {
+ try {
+ return [null, fn()]
+ } catch (er) {
+ return [er, null]
+ }
+}
class UnpackSync extends Unpack {
+ [MAKEFS] (er, entry) {
+ return super[MAKEFS](er, entry, () => {})
+ }
+
[CHECKFS] (entry) {
- const er = this[MKDIR](path.dirname(entry.absolute), this.dmode, neverCalled)
- if (er)
- return this[ONERROR](er, entry)
- try {
- const st = fs.lstatSync(entry.absolute)
- if (this.keep || this.newer && st.mtime > entry.mtime)
- return this[SKIP](entry)
- else if (this[ISREUSABLE](entry, st))
- return this[MAKEFS](null, entry, neverCalled)
- else {
- try {
- if (st.isDirectory()) {
- if (entry.type === 'Directory') {
- if (!this.noChmod && entry.mode && (st.mode & 0o7777) !== entry.mode)
- fs.chmodSync(entry.absolute, entry.mode)
- } else
- fs.rmdirSync(entry.absolute)
- } else
- unlinkFileSync(entry.absolute)
- return this[MAKEFS](null, entry, neverCalled)
- } catch (er) {
- return this[ONERROR](er, entry)
- }
+ this[PRUNECACHE](entry)
+
+ if (!this[CHECKED_CWD]) {
+ const er = this[MKDIR](this.cwd, this.dmode)
+ if (er)
+ return this[ONERROR](er, entry)
+ this[CHECKED_CWD] = true
+ }
+
+ // don't bother to make the parent if the current entry is the cwd,
+ // we've already checked it.
+ if (entry.absolute !== this.cwd) {
+ const parent = normPath(path.dirname(entry.absolute))
+ if (parent !== this.cwd) {
+ const mkParent = this[MKDIR](parent, this.dmode)
+ if (mkParent)
+ return this[ONERROR](mkParent, entry)
}
- } catch (er) {
- return this[MAKEFS](null, entry, neverCalled)
}
+
+ const [lstatEr, st] = callSync(() => fs.lstatSync(entry.absolute))
+ if (st && (this.keep || this.newer && st.mtime > entry.mtime))
+ return this[SKIP](entry)
+
+ if (lstatEr || this[ISREUSABLE](entry, st))
+ return this[MAKEFS](null, entry)
+
+ if (st.isDirectory()) {
+ if (entry.type === 'Directory') {
+ const needChmod = !this.noChmod &&
+ entry.mode &&
+ (st.mode & 0o7777) !== entry.mode
+ const [er] = needChmod ? callSync(() => {
+ fs.chmodSync(entry.absolute, entry.mode)
+ }) : []
+ return this[MAKEFS](er, entry)
+ }
+ // not a dir entry, have to remove it
+ const [er] = callSync(() => fs.rmdirSync(entry.absolute))
+ this[MAKEFS](er, entry)
+ }
+
+ // not a dir, and not reusable.
+ // don't remove if it's the cwd, since we want that error.
+ const [er] = entry.absolute === this.cwd ? []
+ : callSync(() => unlinkFileSync(entry.absolute))
+ this[MAKEFS](er, entry)
}
- [FILE] (entry, _) {
+ [FILE] (entry, done) {
const mode = entry.mode & 0o7777 || this.fmode
const oner = er => {
@@ -570,6 +761,7 @@ class UnpackSync extends Unpack {
}
if (er || closeError)
this[ONERROR](er || closeError, entry)
+ done()
}
let fd
@@ -629,11 +821,14 @@ class UnpackSync extends Unpack {
})
}
- [DIRECTORY] (entry, _) {
+ [DIRECTORY] (entry, done) {
const mode = entry.mode & 0o7777 || this.dmode
const er = this[MKDIR](entry.absolute, mode)
- if (er)
- return this[ONERROR](er, entry)
+ if (er) {
+ this[ONERROR](er, entry)
+ done()
+ return
+ }
if (entry.mtime && !this.noMtime) {
try {
fs.utimesSync(entry.absolute, entry.atime || new Date(), entry.mtime)
@@ -644,12 +839,13 @@ class UnpackSync extends Unpack {
fs.chownSync(entry.absolute, this[UID](entry), this[GID](entry))
} catch (er) {}
}
+ done()
entry.resume()
}
[MKDIR] (dir, mode) {
try {
- return mkdir.sync(dir, {
+ return mkdir.sync(normPath(dir), {
uid: this.uid,
gid: this.gid,
processUid: this.processUid,
@@ -666,9 +862,10 @@ class UnpackSync extends Unpack {
}
}
- [LINK] (entry, linkpath, link, _) {
+ [LINK] (entry, linkpath, link, done) {
try {
fs[link + 'Sync'](linkpath, entry.absolute)
+ done()
entry.resume()
} catch (er) {
return this[ONERROR](er, entry)
diff --git a/deps/npm/node_modules/tar/lib/write-entry.js b/deps/npm/node_modules/tar/lib/write-entry.js
index 1d0b746cd6..3702f2ae51 100644
--- a/deps/npm/node_modules/tar/lib/write-entry.js
+++ b/deps/npm/node_modules/tar/lib/write-entry.js
@@ -4,6 +4,15 @@ const Pax = require('./pax.js')
const Header = require('./header.js')
const fs = require('fs')
const path = require('path')
+const normPath = require('./normalize-windows-path.js')
+const stripSlash = require('./strip-trailing-slashes.js')
+
+const prefixPath = (path, prefix) => {
+ if (!prefix)
+ return normPath(path)
+ path = normPath(path).replace(/^\.(\/|$)/, '')
+ return stripSlash(prefix) + '/' + path
+}
const maxReadSize = 16 * 1024 * 1024
const PROCESS = Symbol('process')
@@ -21,8 +30,13 @@ const OPENFILE = Symbol('openfile')
const ONOPENFILE = Symbol('onopenfile')
const CLOSE = Symbol('close')
const MODE = Symbol('mode')
+const AWAITDRAIN = Symbol('awaitDrain')
+const ONDRAIN = Symbol('ondrain')
+const PREFIX = Symbol('prefix')
+const HAD_ERROR = Symbol('hadError')
const warner = require('./warn-mixin.js')
const winchars = require('./winchars.js')
+const stripAbsolutePath = require('./strip-absolute-path.js')
const modeFix = require('./mode-fix.js')
@@ -32,41 +46,53 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
super(opt)
if (typeof p !== 'string')
throw new TypeError('path is required')
- this.path = p
+ this.path = normPath(p)
// suppress atime, ctime, uid, gid, uname, gname
this.portable = !!opt.portable
// until node has builtin pwnam functions, this'll have to do
- this.myuid = process.getuid && process.getuid()
+ this.myuid = process.getuid && process.getuid() || 0
this.myuser = process.env.USER || ''
this.maxReadSize = opt.maxReadSize || maxReadSize
this.linkCache = opt.linkCache || new Map()
this.statCache = opt.statCache || new Map()
this.preservePaths = !!opt.preservePaths
- this.cwd = opt.cwd || process.cwd()
+ this.cwd = normPath(opt.cwd || process.cwd())
this.strict = !!opt.strict
this.noPax = !!opt.noPax
this.noMtime = !!opt.noMtime
this.mtime = opt.mtime || null
+ this.prefix = opt.prefix ? normPath(opt.prefix) : null
+
+ this.fd = null
+ this.blockLen = null
+ this.blockRemain = null
+ this.buf = null
+ this.offset = null
+ this.length = null
+ this.pos = null
+ this.remain = null
if (typeof opt.onwarn === 'function')
this.on('warn', opt.onwarn)
let pathWarn = false
- if (!this.preservePaths && path.win32.isAbsolute(p)) {
- // absolutes on posix are also absolutes on win32
- // so we only need to test this one to get both
- const parsed = path.win32.parse(p)
- this.path = p.substr(parsed.root.length)
- pathWarn = parsed.root
+ if (!this.preservePaths) {
+ const [root, stripped] = stripAbsolutePath(this.path)
+ if (root) {
+ this.path = stripped
+ pathWarn = root
+ }
}
this.win32 = !!opt.win32 || process.platform === 'win32'
if (this.win32) {
+ // force the \ to / normalization, since we might not *actually*
+ // be on windows, but want \ to be considered a path separator.
this.path = winchars.decode(this.path.replace(/\\/g, '/'))
p = p.replace(/\\/g, '/')
}
- this.absolute = opt.absolute || path.resolve(this.cwd, p)
+ this.absolute = normPath(opt.absolute || path.resolve(this.cwd, p))
if (this.path === '')
this.path = './'
@@ -84,6 +110,12 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
this[LSTAT]()
}
+ emit (ev, ...data) {
+ if (ev === 'error')
+ this[HAD_ERROR] = true
+ return super.emit(ev, ...data)
+ }
+
[LSTAT] () {
fs.lstat(this.absolute, (er, stat) => {
if (er)
@@ -116,13 +148,19 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
return modeFix(mode, this.type === 'Directory', this.portable)
}
+ [PREFIX] (path) {
+ return prefixPath(path, this.prefix)
+ }
+
[HEADER] () {
if (this.type === 'Directory' && this.portable)
this.noMtime = true
this.header = new Header({
- path: this.path,
- linkpath: this.linkpath,
+ path: this[PREFIX](this.path),
+ // only apply the prefix to hard links.
+ linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
+ : this.linkpath,
// only the permissions and setuid/setgid/sticky bitflags
// not the higher-order bits that specify file type
mode: this[MODE](this.stat.mode),
@@ -138,13 +176,14 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
})
if (this.header.encode() && !this.noPax) {
- this.write(new Pax({
+ super.write(new Pax({
atime: this.portable ? null : this.header.atime,
ctime: this.portable ? null : this.header.ctime,
gid: this.portable ? null : this.header.gid,
mtime: this.noMtime ? null : this.mtime || this.header.mtime,
- path: this.path,
- linkpath: this.linkpath,
+ path: this[PREFIX](this.path),
+ linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
+ : this.linkpath,
size: this.header.size,
uid: this.portable ? null : this.header.uid,
uname: this.portable ? null : this.header.uname,
@@ -153,7 +192,7 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
nlink: this.portable ? null : this.stat.nlink,
}).encode())
}
- this.write(this.header.block)
+ super.write(this.header.block)
}
[DIRECTORY] () {
@@ -173,14 +212,14 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
}
[ONREADLINK] (linkpath) {
- this.linkpath = linkpath.replace(/\\/g, '/')
+ this.linkpath = normPath(linkpath)
this[HEADER]()
this.end()
}
[HARDLINK] (linkpath) {
this.type = 'Link'
- this.linkpath = path.relative(this.cwd, linkpath).replace(/\\/g, '/')
+ this.linkpath = normPath(path.relative(this.cwd, linkpath))
this.stat.size = 0
this[HEADER]()
this.end()
@@ -213,74 +252,110 @@ const WriteEntry = warner(class WriteEntry extends MiniPass {
}
[ONOPENFILE] (fd) {
- const blockLen = 512 * Math.ceil(this.stat.size / 512)
- const bufLen = Math.min(blockLen, this.maxReadSize)
- const buf = Buffer.allocUnsafe(bufLen)
- this[READ](fd, buf, 0, buf.length, 0, this.stat.size, blockLen)
+ this.fd = fd
+ if (this[HAD_ERROR])
+ return this[CLOSE]()
+
+ this.blockLen = 512 * Math.ceil(this.stat.size / 512)
+ this.blockRemain = this.blockLen
+ const bufLen = Math.min(this.blockLen, this.maxReadSize)
+ this.buf = Buffer.allocUnsafe(bufLen)
+ this.offset = 0
+ this.pos = 0
+ this.remain = this.stat.size
+ this.length = this.buf.length
+ this[READ]()
}
- [READ] (fd, buf, offset, length, pos, remain, blockRemain) {
+ [READ] () {
+ const { fd, buf, offset, length, pos } = this
fs.read(fd, buf, offset, length, pos, (er, bytesRead) => {
if (er) {
// ignoring the error from close(2) is a bad practice, but at
// this point we already have an error, don't need another one
- return this[CLOSE](fd, () => this.emit('error', er))
+ return this[CLOSE](() => this.emit('error', er))
}
- this[ONREAD](fd, buf, offset, length, pos, remain, blockRemain, bytesRead)
+ this[ONREAD](bytesRead)
})
}
- [CLOSE] (fd, cb) {
- fs.close(fd, cb)
+ [CLOSE] (cb) {
+ fs.close(this.fd, cb)
}
- [ONREAD] (fd, buf, offset, length, pos, remain, blockRemain, bytesRead) {
- if (bytesRead <= 0 && remain > 0) {
+ [ONREAD] (bytesRead) {
+ if (bytesRead <= 0 && this.remain > 0) {
const er = new Error('encountered unexpected EOF')
er.path = this.absolute
er.syscall = 'read'
er.code = 'EOF'
- return this[CLOSE](fd, () => this.emit('error', er))
+ return this[CLOSE](() => this.emit('error', er))
}
- if (bytesRead > remain) {
+ if (bytesRead > this.remain) {
const er = new Error('did not encounter expected EOF')
er.path = this.absolute
er.syscall = 'read'
er.code = 'EOF'
- return this[CLOSE](fd, () => this.emit('error', er))
+ return this[CLOSE](() => this.emit('error', er))
}
// null out the rest of the buffer, if we could fit the block padding
- if (bytesRead === remain) {
- for (let i = bytesRead; i < length && bytesRead < blockRemain; i++) {
- buf[i + offset] = 0
+ // at the end of this loop, we've incremented bytesRead and this.remain
+ // to be incremented up to the blockRemain level, as if we had expected
+ // to get a null-padded file, and read it until the end. then we will
+ // decrement both remain and blockRemain by bytesRead, and know that we
+ // reached the expected EOF, without any null buffer to append.
+ if (bytesRead === this.remain) {
+ for (let i = bytesRead; i < this.length && bytesRead < this.blockRemain; i++) {
+ this.buf[i + this.offset] = 0
bytesRead++
- remain++
+ this.remain++
}
}
- const writeBuf = offset === 0 && bytesRead === buf.length ?
- buf : buf.slice(offset, offset + bytesRead)
- remain -= bytesRead
- blockRemain -= bytesRead
- pos += bytesRead
- offset += bytesRead
+ const writeBuf = this.offset === 0 && bytesRead === this.buf.length ?
+ this.buf : this.buf.slice(this.offset, this.offset + bytesRead)
+
+ const flushed = this.write(writeBuf)
+ if (!flushed)
+ this[AWAITDRAIN](() => this[ONDRAIN]())
+ else
+ this[ONDRAIN]()
+ }
+
+ [AWAITDRAIN] (cb) {
+ this.once('drain', cb)
+ }
- this.write(writeBuf)
+ write (writeBuf) {
+ if (this.blockRemain < writeBuf.length) {
+ const er = new Error('writing more data than expected')
+ er.path = this.absolute
+ return this.emit('error', er)
+ }
+ this.remain -= writeBuf.length
+ this.blockRemain -= writeBuf.length
+ this.pos += writeBuf.length
+ this.offset += writeBuf.length
+ return super.write(writeBuf)
+ }
- if (!remain) {
- if (blockRemain)
- this.write(Buffer.alloc(blockRemain))
- return this[CLOSE](fd, er => er ? this.emit('error', er) : this.end())
+ [ONDRAIN] () {
+ if (!this.remain) {
+ if (this.blockRemain)
+ super.write(Buffer.alloc(this.blockRemain))
+ return this[CLOSE](er => er ? this.emit('error', er) : this.end())
}
- if (offset >= length) {
- buf = Buffer.allocUnsafe(length)
- offset = 0
+ if (this.offset >= this.length) {
+ // if we only have a smaller bit left to read, alloc a smaller buffer
+ // otherwise, keep it the same length it was before.
+ this.buf = Buffer.allocUnsafe(Math.min(this.blockRemain, this.buf.length))
+ this.offset = 0
}
- length = buf.length - offset
- this[READ](fd, buf, offset, length, pos, remain, blockRemain)
+ this.length = this.buf.length - this.offset
+ this[READ]()
}
})
@@ -297,25 +372,30 @@ class WriteEntrySync extends WriteEntry {
this[ONOPENFILE](fs.openSync(this.absolute, 'r'))
}
- [READ] (fd, buf, offset, length, pos, remain, blockRemain) {
+ [READ] () {
let threw = true
try {
+ const { fd, buf, offset, length, pos } = this
const bytesRead = fs.readSync(fd, buf, offset, length, pos)
- this[ONREAD](fd, buf, offset, length, pos, remain, blockRemain, bytesRead)
+ this[ONREAD](bytesRead)
threw = false
} finally {
// ignoring the error from close(2) is a bad practice, but at
// this point we already have an error, don't need another one
if (threw) {
try {
- this[CLOSE](fd, () => {})
+ this[CLOSE](() => {})
} catch (er) {}
}
}
}
- [CLOSE] (fd, cb) {
- fs.closeSync(fd)
+ [AWAITDRAIN] (cb) {
+ cb()
+ }
+
+ [CLOSE] (cb) {
+ fs.closeSync(this.fd)
cb()
}
}
@@ -335,7 +415,9 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
if (this.type === 'Directory' && this.portable)
this.noMtime = true
- this.path = readEntry.path
+ this.prefix = opt.prefix || null
+
+ this.path = normPath(readEntry.path)
this.mode = this[MODE](readEntry.mode)
this.uid = this.portable ? null : readEntry.uid
this.gid = this.portable ? null : readEntry.gid
@@ -345,24 +427,27 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
this.mtime = this.noMtime ? null : opt.mtime || readEntry.mtime
this.atime = this.portable ? null : readEntry.atime
this.ctime = this.portable ? null : readEntry.ctime
- this.linkpath = readEntry.linkpath
+ this.linkpath = normPath(readEntry.linkpath)
if (typeof opt.onwarn === 'function')
this.on('warn', opt.onwarn)
let pathWarn = false
- if (path.isAbsolute(this.path) && !this.preservePaths) {
- const parsed = path.parse(this.path)
- pathWarn = parsed.root
- this.path = this.path.substr(parsed.root.length)
+ if (!this.preservePaths) {
+ const [root, stripped] = stripAbsolutePath(this.path)
+ if (root) {
+ this.path = stripped
+ pathWarn = root
+ }
}
this.remain = readEntry.size
this.blockRemain = readEntry.startBlockSize
this.header = new Header({
- path: this.path,
- linkpath: this.linkpath,
+ path: this[PREFIX](this.path),
+ linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
+ : this.linkpath,
// only the permissions and setuid/setgid/sticky bitflags
// not the higher-order bits that specify file type
mode: this.mode,
@@ -389,8 +474,9 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
ctime: this.portable ? null : this.ctime,
gid: this.portable ? null : this.gid,
mtime: this.noMtime ? null : this.mtime,
- path: this.path,
- linkpath: this.linkpath,
+ path: this[PREFIX](this.path),
+ linkpath: this.type === 'Link' ? this[PREFIX](this.linkpath)
+ : this.linkpath,
size: this.size,
uid: this.portable ? null : this.uid,
uname: this.portable ? null : this.uname,
@@ -404,6 +490,10 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
readEntry.pipe(this)
}
+ [PREFIX] (path) {
+ return prefixPath(path, this.prefix)
+ }
+
[MODE] (mode) {
return modeFix(mode, this.type === 'Directory', this.portable)
}
@@ -418,7 +508,7 @@ const WriteEntryTar = warner(class WriteEntryTar extends MiniPass {
end () {
if (this.blockRemain)
- this.write(Buffer.alloc(this.blockRemain))
+ super.write(Buffer.alloc(this.blockRemain))
return super.end()
}
})
diff --git a/deps/npm/node_modules/tar/package.json b/deps/npm/node_modules/tar/package.json
index 9b8b96ec66..a10cdac85e 100644
--- a/deps/npm/node_modules/tar/package.json
+++ b/deps/npm/node_modules/tar/package.json
@@ -2,13 +2,15 @@
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
"name": "tar",
"description": "tar for node",
- "version": "6.1.0",
+ "version": "6.1.10",
"repository": {
"type": "git",
"url": "https://github.com/npm/node-tar.git"
},
"scripts": {
- "test": "tap",
+ "test:posix": "tap",
+ "test:win32": "tap --lines=98 --branches=98 --statements=98 --functions=98",
+ "test": "node test/fixtures/test.js",
"posttest": "npm run lint",
"eslint": "eslint",
"lint": "npm run eslint -- test lib",
@@ -38,7 +40,7 @@
"events-to-array": "^1.1.2",
"mutate-fs": "^2.1.1",
"rimraf": "^2.7.1",
- "tap": "^14.9.2",
+ "tap": "^15.0.9",
"tar-fs": "^1.16.3",
"tar-stream": "^1.6.2"
},
diff --git a/deps/npm/package.json b/deps/npm/package.json
index 15835f331e..cb8b11ff5e 100644
--- a/deps/npm/package.json
+++ b/deps/npm/package.json
@@ -1,5 +1,5 @@
{
- "version": "7.20.3",
+ "version": "7.21.0",
"name": "npm",
"description": "a package manager for JavaScript",
"workspaces": [
@@ -53,33 +53,33 @@
"./package.json": "./package.json"
},
"dependencies": {
- "@npmcli/arborist": "^2.8.0",
+ "@npmcli/arborist": "^2.8.2",
"@npmcli/ci-detect": "^1.2.0",
"@npmcli/config": "^2.2.0",
+ "@npmcli/map-workspaces": "^1.0.4",
"@npmcli/package-json": "^1.0.1",
- "@npmcli/run-script": "^1.8.5",
+ "@npmcli/run-script": "^1.8.6",
"abbrev": "~1.1.1",
"ansicolors": "~0.3.2",
"ansistyles": "~0.1.3",
"archy": "~1.0.0",
- "byte-size": "^7.0.1",
"cacache": "^15.2.0",
- "chalk": "^4.1.0",
+ "chalk": "^4.1.2",
"chownr": "^2.0.0",
"cli-columns": "^3.1.2",
"cli-table3": "^0.6.0",
"columnify": "~1.5.4",
+ "fastest-levenshtein": "^1.0.12",
"glob": "^7.1.7",
- "graceful-fs": "^4.2.6",
+ "graceful-fs": "^4.2.8",
"hosted-git-info": "^4.0.2",
"ini": "^2.0.0",
- "init-package-json": "^2.0.3",
+ "init-package-json": "^2.0.4",
"is-cidr": "^4.0.2",
"json-parse-even-better-errors": "^2.3.1",
- "leven": "^3.1.0",
"libnpmaccess": "^4.0.2",
"libnpmdiff": "^2.0.4",
- "libnpmexec": "^2.0.0",
+ "libnpmexec": "^2.0.1",
"libnpmfund": "^1.1.0",
"libnpmhook": "^6.0.2",
"libnpmorg": "^2.0.2",
@@ -88,7 +88,7 @@
"libnpmsearch": "^3.1.1",
"libnpmteam": "^2.0.3",
"libnpmversion": "^1.2.1",
- "make-fetch-happen": "^9.0.4",
+ "make-fetch-happen": "^9.0.5",
"minipass": "^3.1.3",
"minipass-pipeline": "^1.2.4",
"mkdirp": "^1.0.4",
@@ -102,19 +102,19 @@
"npm-profile": "^5.0.3",
"npm-registry-fetch": "^11.0.0",
"npm-user-validate": "^1.0.1",
- "npmlog": "~4.1.2",
+ "npmlog": "^5.0.0",
"opener": "^1.5.2",
"pacote": "^11.3.5",
"parse-conflict-json": "^1.1.1",
"qrcode-terminal": "^0.12.0",
"read": "~1.0.7",
- "read-package-json": "^3.0.1",
- "read-package-json-fast": "^2.0.2",
+ "read-package-json": "^4.0.0",
+ "read-package-json-fast": "^2.0.3",
"readdir-scoped-modules": "^1.1.0",
"rimraf": "^3.0.2",
"semver": "^7.3.5",
"ssri": "^8.0.1",
- "tar": "^6.1.0",
+ "tar": "^6.1.10",
"text-table": "~0.2.0",
"tiny-relative-date": "^1.3.0",
"treeverse": "^1.0.4",
@@ -126,19 +126,20 @@
"@npmcli/arborist",
"@npmcli/ci-detect",
"@npmcli/config",
+ "@npmcli/map-workspaces",
"@npmcli/package-json",
"@npmcli/run-script",
"abbrev",
"ansicolors",
"ansistyles",
"archy",
- "byte-size",
"cacache",
"chalk",
"chownr",
"cli-columns",
"cli-table3",
"columnify",
+ "fastest-levenshtein",
"glob",
"graceful-fs",
"hosted-git-info",
@@ -146,7 +147,6 @@
"init-package-json",
"is-cidr",
"json-parse-even-better-errors",
- "leven",
"libnpmaccess",
"libnpmdiff",
"libnpmexec",
@@ -193,12 +193,13 @@
"write-file-atomic"
],
"devDependencies": {
- "eslint": "^7.30.0",
+ "eslint": "^7.31.0",
"eslint-plugin-import": "^2.23.4",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^5.1.0",
"eslint-plugin-standard": "^5.0.0",
"licensee": "^8.2.0",
+ "spawk": "^1.7.1",
"tap": "^15.0.9"
},
"scripts": {
diff --git a/deps/npm/tap-snapshots/smoke-tests/index.js.test.cjs b/deps/npm/tap-snapshots/smoke-tests/index.js.test.cjs
index 0a79e38cdf..c1316e04d7 100644
--- a/deps/npm/tap-snapshots/smoke-tests/index.js.test.cjs
+++ b/deps/npm/tap-snapshots/smoke-tests/index.js.test.cjs
@@ -340,6 +340,7 @@ exports[`smoke-tests/index.js TAP npm install dev dep > should have expected dev
"requires": true,
"packages": {
"": {
+ "name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
@@ -426,6 +427,7 @@ exports[`smoke-tests/index.js TAP npm install prodDep@version > should have expe
"requires": true,
"packages": {
"": {
+ "name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
@@ -614,6 +616,7 @@ exports[`smoke-tests/index.js TAP npm uninstall > should have expected uninstall
"requires": true,
"packages": {
"": {
+ "name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
@@ -671,6 +674,7 @@ exports[`smoke-tests/index.js TAP npm update dep > should have expected update l
"requires": true,
"packages": {
"": {
+ "name": "project",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
diff --git a/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs b/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs
index 8cf2e2837e..9f811a0058 100644
--- a/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/load-all-commands.js.test.cjs
@@ -102,7 +102,8 @@ npm cache add <folder>
npm cache add <tarball url>
npm cache add <git url>
npm cache add <name>@<version>
-npm cache clean
+npm cache clean [<key>]
+npm cache ls [<name>@<version>]
npm cache verify
Options:
diff --git a/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs
index 01b137b8af..9d5fe79afa 100644
--- a/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/utils/config/definitions.js.test.cjs
@@ -180,6 +180,12 @@ When publishing scoped packages, the access level defaults to \`restricted\`.
If you want your scoped package to be publicly viewable (and installable)
set \`--access=public\`. The only valid values for \`access\` are \`public\` and
\`restricted\`. Unscoped packages _always_ have an access level of \`public\`.
+
+Note: Using the \`--access\` flag on the \`npm publish\` command will only set
+the package access level on the initial publish of the package. Any
+subsequent \`npm publish\` commands using the \`--access\` flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use \`npm access\`.
`
exports[`test/lib/utils/config/definitions.js TAP > config description for all 1`] = `
diff --git a/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs
index 8487b45174..4e3efb916f 100644
--- a/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/utils/config/describe-all.js.test.cjs
@@ -17,6 +17,9 @@ Warning: This should generally not be set via a command-line option. It is
safer to use a registry-provided authentication bearer token stored in the
~/.npmrc file by running \`npm login\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`access\`
* Default: 'restricted' for scoped packages, 'public' for unscoped packages
@@ -27,6 +30,15 @@ If you want your scoped package to be publicly viewable (and installable)
set \`--access=public\`. The only valid values for \`access\` are \`public\` and
\`restricted\`. Unscoped packages _always_ have an access level of \`public\`.
+Note: Using the \`--access\` flag on the \`npm publish\` command will only set
+the package access level on the initial publish of the package. Any
+subsequent \`npm publish\` commands using the \`--access\` flag will not have an
+effect to the access level. To make changes to the access level after the
+initial publish use \`npm access\`.
+
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`all\`
* Default: false
@@ -36,6 +48,9 @@ When running \`npm outdated\` and \`npm ls\`, setting \`--all\` will show all
outdated or installed packages, rather than only those directly depended
upon by the current project.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`allow-same-version\`
* Default: false
@@ -44,6 +59,9 @@ upon by the current project.
Prevents throwing an error when \`npm version\` is used to set the new version
to the same value as the current version.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`audit\`
* Default: true
@@ -54,6 +72,9 @@ default registry and all registries configured for scopes. See the
documentation for [\`npm audit\`](/commands/npm-audit) for details on what is
submitted.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`audit-level\`
* Default: null
@@ -62,6 +83,9 @@ submitted.
The minimum level of vulnerability for \`npm audit\` to exit with a non-zero
exit code.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`before\`
* Default: null
@@ -77,6 +101,9 @@ If the requested version is a \`dist-tag\` and the given tag does not pass the
will be used. For example, \`foo@latest\` might install \`foo@1.2\` even though
\`latest\` is \`2.0\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`bin-links\`
* Default: true
@@ -89,6 +116,9 @@ Set to false to have it not do this. This can be used to work around the
fact that some file systems don't support symlinks, even on ostensibly Unix
systems.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`browser\`
* Default: OS X: \`"open"\`, Windows: \`"start"\`, Others: \`"xdg-open"\`
@@ -101,6 +131,9 @@ terminal.
Set to \`true\` to use default system URL opener.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`ca\`
* Default: null
@@ -127,6 +160,9 @@ ca[]="..."
See also the \`strict-ssl\` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cache\`
* Default: Windows: \`%LocalAppData%\\npm-cache\`, Posix: \`~/.npm\`
@@ -135,6 +171,9 @@ See also the \`strict-ssl\` config.
The location of npm's cache directory. See [\`npm
cache\`](/commands/npm-cache)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cafile\`
* Default: null
@@ -144,6 +183,9 @@ A path to a file containing one or multiple Certificate Authority signing
certificates. Similar to the \`ca\` setting, but allows for multiple CA's, as
well as for the CA information to be stored in a file on disk.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`call\`
* Default: ""
@@ -157,6 +199,9 @@ npm exec --package yo --package generator-node --call "yo node"
\`\`\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cert\`
* Default: null
@@ -173,6 +218,9 @@ cert="-----BEGIN CERTIFICATE-----\\nXXXX\\nXXXX\\n-----END CERTIFICATE-----"
It is _not_ the path to a certificate file (and there is no "certfile"
option).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`ci-name\`
* Default: The name of the current CI system, or \`null\` when not on a known CI
@@ -183,6 +231,9 @@ The name of a continuous integration system. If not set explicitly, npm will
detect the current CI environment using the
[\`@npmcli/ci-detect\`](http://npm.im/@npmcli/ci-detect) module.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cidr\`
* Default: null
@@ -191,6 +242,9 @@ detect the current CI environment using the
This is a list of CIDR address to be used when configuring limited access
tokens with the \`npm token create\` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`color\`
* Default: true unless the NO_COLOR environ is set to something other than '0'
@@ -199,6 +253,9 @@ tokens with the \`npm token create\` command.
If false, never shows colors. If \`"always"\` then always shows colors. If
true, then only prints color codes for tty file descriptors.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`commit-hooks\`
* Default: true
@@ -206,6 +263,9 @@ true, then only prints color codes for tty file descriptors.
Run git commit hooks when using the \`npm version\` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`depth\`
* Default: \`Infinity\` if \`--all\` is set, otherwise \`1\`
@@ -216,6 +276,9 @@ The depth to go when recursing packages for \`npm ls\`.
If not set, \`npm ls\` will show only the immediate dependencies of the root
project. If \`--all\` is set, then npm will show all dependencies by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`description\`
* Default: true
@@ -223,6 +286,9 @@ project. If \`--all\` is set, then npm will show all dependencies by default.
Show the description in \`npm search\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff\`
* Default:
@@ -230,6 +296,9 @@ Show the description in \`npm search\`
Define arguments to compare in \`npm diff\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-dst-prefix\`
* Default: "b/"
@@ -237,6 +306,9 @@ Define arguments to compare in \`npm diff\`.
Destination prefix to be used in \`npm diff\` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-ignore-all-space\`
* Default: false
@@ -244,6 +316,9 @@ Destination prefix to be used in \`npm diff\` output.
Ignore whitespace when comparing lines in \`npm diff\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-name-only\`
* Default: false
@@ -251,6 +326,9 @@ Ignore whitespace when comparing lines in \`npm diff\`.
Prints only filenames when using \`npm diff\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-no-prefix\`
* Default: false
@@ -261,6 +339,9 @@ Do not show any source or destination prefix in \`npm diff\` output.
Note: this causes \`npm diff\` to ignore the \`--diff-src-prefix\` and
\`--diff-dst-prefix\` configs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-src-prefix\`
* Default: "a/"
@@ -268,6 +349,9 @@ Note: this causes \`npm diff\` to ignore the \`--diff-src-prefix\` and
Source prefix to be used in \`npm diff\` output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-text\`
* Default: false
@@ -275,6 +359,9 @@ Source prefix to be used in \`npm diff\` output.
Treat all files as text in \`npm diff\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`diff-unified\`
* Default: 3
@@ -282,6 +369,9 @@ Treat all files as text in \`npm diff\`.
The number of lines of context to print in \`npm diff\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`dry-run\`
* Default: false
@@ -295,6 +385,9 @@ commands that modify your local installation, eg, \`install\`, \`update\`,
Note: This is NOT honored by other network related commands, eg \`dist-tags\`,
\`owner\`, etc.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`editor\`
* Default: The EDITOR or VISUAL environment variables, or 'notepad.exe' on
@@ -303,6 +396,9 @@ Note: This is NOT honored by other network related commands, eg \`dist-tags\`,
The command to run for \`npm edit\` and \`npm config edit\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`engine-strict\`
* Default: false
@@ -314,6 +410,9 @@ Node.js version.
This can be overridden by setting the \`--force\` flag.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fetch-retries\`
* Default: 2
@@ -325,6 +424,9 @@ from the registry.
npm will retry idempotent read requests to the registry in the case of
network failures or 5xx HTTP errors.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fetch-retry-factor\`
* Default: 10
@@ -332,6 +434,9 @@ network failures or 5xx HTTP errors.
The "factor" config for the \`retry\` module to use when fetching packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fetch-retry-maxtimeout\`
* Default: 60000 (1 minute)
@@ -340,6 +445,9 @@ The "factor" config for the \`retry\` module to use when fetching packages.
The "maxTimeout" config for the \`retry\` module to use when fetching
packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fetch-retry-mintimeout\`
* Default: 10000 (10 seconds)
@@ -348,6 +456,9 @@ packages.
The "minTimeout" config for the \`retry\` module to use when fetching
packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fetch-timeout\`
* Default: 300000 (5 minutes)
@@ -355,6 +466,9 @@ packages.
The maximum amount of time to wait for HTTP requests to complete.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`force\`
* Default: false
@@ -380,6 +494,9 @@ mistakes, unnecessary performance degradation, and malicious input.
If you don't have a clear idea of what you want to do, it is strongly
recommended that you do not use this option!
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`foreground-scripts\`
* Default: false
@@ -392,6 +509,9 @@ input, output, and error with the main npm process.
Note that this will generally make installs run slower, and be much noisier,
but can be useful for debugging.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`format-package-lock\`
* Default: true
@@ -400,6 +520,9 @@ but can be useful for debugging.
Format \`package-lock.json\` or \`npm-shrinkwrap.json\` as a human readable
file.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`fund\`
* Default: true
@@ -409,6 +532,9 @@ When "true" displays the message at the end of each \`npm install\`
acknowledging the number of dependencies looking for funding. See [\`npm
fund\`](/commands/npm-fund) for details.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`git\`
* Default: "git"
@@ -417,6 +543,9 @@ fund\`](/commands/npm-fund) for details.
The command to use for git commands. If git is installed on the computer,
but is not in the \`PATH\`, then set this to the full path to the git binary.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`git-tag-version\`
* Default: true
@@ -424,6 +553,9 @@ but is not in the \`PATH\`, then set this to the full path to the git binary.
Tag the commit when using the \`npm version\` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`global\`
* Default: false
@@ -438,6 +570,9 @@ folder instead of the current working directory. See
* bin files are linked to \`{prefix}/bin\`
* man pages are linked to \`{prefix}/share/man\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`global-style\`
* Default: false
@@ -450,6 +585,9 @@ on will be flattened in their \`node_modules\` folders. This obviously will
eliminate some deduping. If used with \`legacy-bundling\`, \`legacy-bundling\`
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`globalconfig\`
* Default: The global --prefix setting plus 'etc/npmrc'. For example,
@@ -458,6 +596,9 @@ will be preferred.
The config file to read for global config options.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`heading\`
* Default: "npm"
@@ -465,6 +606,9 @@ The config file to read for global config options.
The string that starts all the debugging log output.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`https-proxy\`
* Default: null
@@ -475,6 +619,9 @@ A proxy to use for outgoing https requests. If the \`HTTPS_PROXY\` or
proxy settings will be honored by the underlying \`make-fetch-happen\`
library.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`if-present\`
* Default: false
@@ -487,6 +634,9 @@ it's present and fail if the script fails. This is useful, for example, when
running scripts that may only apply for some builds in an otherwise generic
CI setup.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`ignore-scripts\`
* Default: false
@@ -499,6 +649,9 @@ Note that commands explicitly intended to run a particular script, such as
will still run their intended script if \`ignore-scripts\` is set, but they
will *not* run any pre- or post-scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`include\`
* Default:
@@ -511,6 +664,9 @@ This is the inverse of \`--omit=<type>\`.
Dependency types specified in \`--include\` will not be omitted, regardless of
the order in which omit/include are specified on the command-line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`include-staged\`
* Default: false
@@ -521,6 +677,9 @@ Allow installing "staged" published packages, as defined by [npm RFC PR
This is experimental, and not implemented by the npm public registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-author-email\`
* Default: ""
@@ -528,6 +687,9 @@ This is experimental, and not implemented by the npm public registry.
The value \`npm init\` should use by default for the package author's email.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-author-name\`
* Default: ""
@@ -535,6 +697,9 @@ The value \`npm init\` should use by default for the package author's email.
The value \`npm init\` should use by default for the package author's name.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-author-url\`
* Default: ""
@@ -543,6 +708,9 @@ The value \`npm init\` should use by default for the package author's name.
The value \`npm init\` should use by default for the package author's
homepage.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-license\`
* Default: "ISC"
@@ -550,6 +718,9 @@ homepage.
The value \`npm init\` should use by default for the package license.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-module\`
* Default: "~/.npm-init.js"
@@ -560,6 +731,9 @@ documentation for the
[init-package-json](https://github.com/npm/init-package-json) module for
more information, or [npm init](/commands/npm-init).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init-version\`
* Default: "1.0.0"
@@ -568,6 +742,9 @@ more information, or [npm init](/commands/npm-init).
The value that \`npm init\` should use by default for the package version
number, if not already set in package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`json\`
* Default: false
@@ -580,6 +757,9 @@ Whether or not to output JSON data, rather than the normal output.
Not supported by all npm commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`key\`
* Default: null
@@ -594,6 +774,9 @@ key="-----BEGIN PRIVATE KEY-----\\nXXXX\\nXXXX\\n-----END PRIVATE KEY-----"
It is _not_ the path to a key file (and there is no "keyfile" option).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`legacy-bundling\`
* Default: false
@@ -604,6 +787,9 @@ such as the one included with node 0.8, can install the package. This
eliminates all automatic deduping. If used with \`global-style\` this option
will be preferred.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`legacy-peer-deps\`
* Default: false
@@ -622,6 +808,9 @@ This differs from \`--omit=peer\`, in that \`--omit=peer\` will avoid unpacking
Use of \`legacy-peer-deps\` is not recommended, as it will not enforce the
\`peerDependencies\` contract that meta-dependencies may rely on.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`link\`
* Default: false
@@ -629,6 +818,9 @@ Use of \`legacy-peer-deps\` is not recommended, as it will not enforce the
Used with \`npm ls\`, limiting output to only those packages that are linked.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`local-address\`
* Default: null
@@ -637,6 +829,9 @@ Used with \`npm ls\`, limiting output to only those packages that are linked.
The IP address of the local interface to use when making connections to the
npm registry. Must be IPv4 in versions of Node prior to 0.12.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`location\`
* Default: "user" unless \`--global\` is passed, which will also set this value
@@ -645,6 +840,9 @@ npm registry. Must be IPv4 in versions of Node prior to 0.12.
When passed to \`npm config\` this refers to which config file to use.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`loglevel\`
* Default: "notice"
@@ -659,6 +857,9 @@ Any logs of a higher level than the setting are shown. The default is
See also the \`foreground-scripts\` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`logs-max\`
* Default: 10
@@ -666,6 +867,9 @@ See also the \`foreground-scripts\` config.
The maximum number of log files to store.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`long\`
* Default: false
@@ -673,6 +877,9 @@ The maximum number of log files to store.
Show extended information in \`ls\`, \`search\`, and \`help-search\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`maxsockets\`
* Default: 15
@@ -681,6 +888,9 @@ Show extended information in \`ls\`, \`search\`, and \`help-search\`.
The maximum number of connections to use per origin (protocol/host/port
combination).
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`message\`
* Default: "%s"
@@ -690,6 +900,9 @@ Commit message which is used by \`npm version\` when creating version commit.
Any "%s" in the message will be replaced with the version number.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`node-options\`
* Default: null
@@ -699,6 +912,9 @@ Options to pass through to Node.js via the \`NODE_OPTIONS\` environment
variable. This does not impact how npm itself is executed but it does impact
how lifecycle scripts are called.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`node-version\`
* Default: Node.js \`process.version\` value
@@ -706,6 +922,9 @@ how lifecycle scripts are called.
The node version to use when checking a package's \`engines\` setting.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`noproxy\`
* Default: The value of the NO_PROXY environment variable
@@ -715,6 +934,9 @@ Domain extensions that should bypass any proxies.
Also accepts a comma-delimited string.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`npm-version\`
* Default: Output of \`npm --version\`
@@ -722,6 +944,9 @@ Also accepts a comma-delimited string.
The npm version to use when checking a package's \`engines\` setting.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`offline\`
* Default: false
@@ -730,6 +955,9 @@ The npm version to use when checking a package's \`engines\` setting.
Force offline mode: no network requests will be done during install. To
allow the CLI to fill in missing cache data, see \`--prefer-offline\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`omit\`
* Default: 'dev' if the \`NODE_ENV\` environment variable is set to
@@ -748,6 +976,9 @@ it will be included.
If the resulting omit list includes \`'dev'\`, then the \`NODE_ENV\` environment
variable will be set to \`'production'\` for all lifecycle scripts.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`otp\`
* Default: null
@@ -759,6 +990,9 @@ when publishing or changing package permissions with \`npm access\`.
If not set, and a registry response fails with a challenge for a one-time
password, npm will prompt on the command line for one.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`pack-destination\`
* Default: "."
@@ -766,6 +1000,9 @@ password, npm will prompt on the command line for one.
Directory in which \`npm pack\` will save tarballs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`package\`
* Default:
@@ -773,6 +1010,9 @@ Directory in which \`npm pack\` will save tarballs.
The package to install for [\`npm exec\`](/commands/npm-exec)
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`package-lock\`
* Default: true
@@ -785,6 +1025,9 @@ When package package-locks are disabled, automatic pruning of extraneous
modules will also be disabled. To remove extraneous modules with
package-locks disabled use \`npm prune\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`package-lock-only\`
* Default: false
@@ -799,6 +1042,9 @@ instead of checking \`node_modules\` and downloading dependencies.
For \`list\` this means the output will be based on the tree described by the
\`package-lock.json\`, rather than the contents of \`node_modules\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`parseable\`
* Default: false
@@ -807,6 +1053,9 @@ For \`list\` this means the output will be based on the tree described by the
Output parseable results from commands that write to standard output. For
\`npm search\`, this will be tab-separated table format.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`prefer-offline\`
* Default: false
@@ -816,6 +1065,9 @@ If true, staleness checks for cached data will be bypassed, but missing data
will be requested from the server. To force full offline mode, use
\`--offline\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`prefer-online\`
* Default: false
@@ -824,6 +1076,9 @@ will be requested from the server. To force full offline mode, use
If true, staleness checks for cached data will be forced, making the CLI
look for updates immediately even for fresh package data.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`prefix\`
* Default: In global mode, the folder where the node executable is installed.
@@ -834,6 +1089,9 @@ look for updates immediately even for fresh package data.
The location to install global items. If set on the command line, then it
forces non-global commands to run in the specified folder.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`preid\`
* Default: ""
@@ -842,6 +1100,9 @@ forces non-global commands to run in the specified folder.
The "prerelease identifier" to use as a prefix for the "prerelease" part of
a semver. Like the \`rc\` in \`1.2.0-rc.8\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`progress\`
* Default: \`true\` unless running in a known CI system
@@ -852,6 +1113,9 @@ operations, if \`process.stderr\` is a TTY.
Set to \`false\` to suppress the progress bar.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`proxy\`
* Default: null
@@ -861,6 +1125,9 @@ A proxy to use for outgoing http requests. If the \`HTTP_PROXY\` or
\`http_proxy\` environment variables are set, proxy settings will be honored
by the underlying \`request\` library.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`read-only\`
* Default: false
@@ -869,6 +1136,9 @@ by the underlying \`request\` library.
This is used to mark a token as unable to publish when configuring limited
access tokens with the \`npm token create\` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`rebuild-bundle\`
* Default: true
@@ -876,6 +1146,9 @@ access tokens with the \`npm token create\` command.
Rebuild bundled dependencies after installation.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`registry\`
* Default: "https://registry.npmjs.org/"
@@ -883,6 +1156,9 @@ Rebuild bundled dependencies after installation.
The base URL of the npm registry.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save\`
* Default: true
@@ -893,6 +1169,9 @@ Save installed packages to a package.json file as dependencies.
When used with the \`npm rm\` command, removes the dependency from
package.json.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-bundle\`
* Default: false
@@ -904,6 +1183,9 @@ If a package would be saved at install time by the use of \`--save\`,
Ignore if \`--save-peer\` is set, since peerDependencies cannot be bundled.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-dev\`
* Default: false
@@ -911,6 +1193,9 @@ Ignore if \`--save-peer\` is set, since peerDependencies cannot be bundled.
Save installed packages to a package.json file as \`devDependencies\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-exact\`
* Default: false
@@ -919,6 +1204,9 @@ Save installed packages to a package.json file as \`devDependencies\`.
Dependencies saved to package.json will be configured with an exact version
rather than using npm's default semver range operator.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-optional\`
* Default: false
@@ -926,6 +1214,9 @@ rather than using npm's default semver range operator.
Save installed packages to a package.json file as \`optionalDependencies\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-peer\`
* Default: false
@@ -933,6 +1224,9 @@ Save installed packages to a package.json file as \`optionalDependencies\`.
Save installed packages. to a package.json file as \`peerDependencies\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-prefix\`
* Default: "^"
@@ -946,6 +1240,9 @@ to \`^1.2.3\` which allows minor upgrades for that package, but after \`npm
config set save-prefix='~'\` it would be set to \`~1.2.3\` which only allows
patch upgrades.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`save-prod\`
* Default: false
@@ -958,6 +1255,9 @@ you want to move it to be a non-optional production dependency.
This is the default behavior if \`--save\` is true, and neither \`--save-dev\`
or \`--save-optional\` are true.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`scope\`
* Default: the scope of the current project, if any, or ""
@@ -988,6 +1288,9 @@ npm init --scope=@foo --yes
\`\`\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`script-shell\`
* Default: '/bin/sh' on POSIX systems, 'cmd.exe' on Windows
@@ -996,6 +1299,9 @@ npm init --scope=@foo --yes
The shell to use for scripts run with the \`npm exec\`, \`npm run\` and \`npm
init <pkg>\` commands.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`searchexclude\`
* Default: ""
@@ -1003,6 +1309,9 @@ init <pkg>\` commands.
Space-separated options that limit the results from search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`searchlimit\`
* Default: 20
@@ -1011,6 +1320,9 @@ Space-separated options that limit the results from search.
Number of items to limit search results to. Will not apply at all to legacy
searches.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`searchopts\`
* Default: ""
@@ -1018,6 +1330,9 @@ searches.
Space-separated options that are always passed to search.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`searchstaleness\`
* Default: 900
@@ -1026,6 +1341,9 @@ Space-separated options that are always passed to search.
The age of the cache, in seconds, before another registry request is made if
using legacy search endpoint.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`shell\`
* Default: SHELL environment variable, or "bash" on Posix, or "cmd.exe" on
@@ -1034,6 +1352,9 @@ using legacy search endpoint.
The shell to run for the \`npm explore\` command.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`sign-git-commit\`
* Default: false
@@ -1045,6 +1366,9 @@ version using \`-S\` to add a signature.
Note that git requires you to have set up GPG keys in your git configs for
this to work properly.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`sign-git-tag\`
* Default: false
@@ -1056,6 +1380,9 @@ If set to true, then the \`npm version\` command will tag the version using
Note that git requires you to have set up GPG keys in your git configs for
this to work properly.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`strict-peer-deps\`
* Default: false
@@ -1075,6 +1402,9 @@ When such and override is performed, a warning is printed, explaining the
conflict and the packages involved. If \`--strict-peer-deps\` is set, then
this warning is treated as a failure.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`strict-ssl\`
* Default: true
@@ -1085,6 +1415,9 @@ via https.
See also the \`ca\` config.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`tag\`
* Default: "latest"
@@ -1099,6 +1432,9 @@ command, if no explicit tag is given.
When used by the \`npm diff\` command, this is the tag used to fetch the
tarball that will be compared with the local files by default.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`tag-version-prefix\`
* Default: "v"
@@ -1112,6 +1448,9 @@ Because other tools may rely on the convention that npm version tags look
like \`v1.0.0\`, _only use this property if it is absolutely necessary_. In
particular, use care when overriding this setting for public packages.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`timing\`
* Default: false
@@ -1124,6 +1463,9 @@ successfully. \`_timing.json\` is a newline delimited list of JSON objects.
You can quickly view it with this [json](https://npm.im/json) command line:
\`npm exec -- json -g < ~/.npm/_timing.json\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`umask\`
* Default: 0
@@ -1144,6 +1486,9 @@ Thus, the effective default umask value on most POSIX systems is 0o22,
meaning that folders and executables are created with a mode of 0o755 and
other files are created with a mode of 0o644.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`unicode\`
* Default: false on windows, true on mac/unix systems with a unicode locale,
@@ -1153,6 +1498,9 @@ other files are created with a mode of 0o644.
When set to true, npm uses unicode characters in the tree output. When
false, it uses ascii characters instead of unicode glyphs.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`update-notifier\`
* Default: true
@@ -1161,6 +1509,9 @@ false, it uses ascii characters instead of unicode glyphs.
Set to false to suppress the update notification when using an older version
of npm than the latest.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`usage\`
* Default: false
@@ -1168,6 +1519,9 @@ of npm than the latest.
Show short usage output about the command specified.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`user-agent\`
* Default: "npm/{npm-version} node/{node-version} {platform} {arch}
@@ -1186,6 +1540,9 @@ their actual counterparts:
* \`{ci}\` - The value of the \`ci-name\` config, if set, prefixed with \`ci/\`, or
an empty string if \`ci-name\` is empty.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`userconfig\`
* Default: "~/.npmrc"
@@ -1197,6 +1554,9 @@ This may be overridden by the \`npm_config_userconfig\` environment variable
or the \`--userconfig\` command line option, but may _not_ be overridden by
settings in the \`globalconfig\` file.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`version\`
* Default: false
@@ -1206,6 +1566,9 @@ If true, output the npm version and exit successfully.
Only relevant when specified explicitly on the command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`versions\`
* Default: false
@@ -1217,6 +1580,9 @@ exists, and exit successfully.
Only relevant when specified explicitly on the command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`viewer\`
* Default: "man" on Posix, "browser" on Windows
@@ -1226,6 +1592,9 @@ The program to use to view help content.
Set to \`"browser"\` to view html help content in the default web browser.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`which\`
* Default: null
@@ -1233,6 +1602,9 @@ Set to \`"browser"\` to view html help content in the default web browser.
If there are multiple funding sources, which 1-indexed source URL to open.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`workspace\`
* Default:
@@ -1255,6 +1627,9 @@ brand new workspace within the project.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`workspaces\`
* Default: false
@@ -1265,6 +1640,9 @@ workspaces.
This value is not exported to the environment for child processes.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`yes\`
* Default: null
@@ -1273,6 +1651,9 @@ This value is not exported to the environment for child processes.
Automatically answer "yes" to any prompts that npm might print on the
command line.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`also\`
* Default: null
@@ -1281,6 +1662,9 @@ command line.
When set to \`dev\` or \`development\`, this is an alias for \`--include=dev\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`auth-type\`
* Default: "legacy"
@@ -1290,6 +1674,9 @@ When set to \`dev\` or \`development\`, this is an alias for \`--include=dev\`.
What authentication strategy to use with \`adduser\`/\`login\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cache-max\`
* Default: Infinity
@@ -1298,6 +1685,9 @@ What authentication strategy to use with \`adduser\`/\`login\`.
\`--cache-max=0\` is an alias for \`--prefer-online\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`cache-min\`
* Default: 0
@@ -1306,6 +1696,9 @@ What authentication strategy to use with \`adduser\`/\`login\`.
\`--cache-min=9999 (or bigger)\` is an alias for \`--prefer-offline\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`dev\`
* Default: false
@@ -1314,6 +1707,9 @@ What authentication strategy to use with \`adduser\`/\`login\`.
Alias for \`--include=dev\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.author.email\`
* Default: ""
@@ -1322,6 +1718,9 @@ Alias for \`--include=dev\`.
Alias for \`--init-author-email\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.author.name\`
* Default: ""
@@ -1330,6 +1729,9 @@ Alias for \`--init-author-email\`
Alias for \`--init-author-name\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.author.url\`
* Default: ""
@@ -1338,6 +1740,9 @@ Alias for \`--init-author-name\`
Alias for \`--init-author-url\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.license\`
* Default: "ISC"
@@ -1346,6 +1751,9 @@ Alias for \`--init-author-url\`
Alias for \`--init-license\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.module\`
* Default: "~/.npm-init.js"
@@ -1354,6 +1762,9 @@ Alias for \`--init-license\`
Alias for \`--init-module\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`init.version\`
* Default: "1.0.0"
@@ -1362,6 +1773,9 @@ Alias for \`--init-module\`
Alias for \`--init-version\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`only\`
* Default: null
@@ -1370,6 +1784,9 @@ Alias for \`--init-version\`
When set to \`prod\` or \`production\`, this is an alias for \`--omit=dev\`.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`optional\`
* Default: null
@@ -1381,6 +1798,9 @@ Default value does install optional deps unless otherwise omitted.
Alias for --include=optional or --omit=optional
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`production\`
* Default: null
@@ -1389,6 +1809,9 @@ Alias for --include=optional or --omit=optional
Alias for \`--omit=dev\`
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`shrinkwrap\`
* Default: true
@@ -1397,6 +1820,9 @@ Alias for \`--omit=dev\`
Alias for --package-lock
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`sso-poll-frequency\`
* Default: 500
@@ -1407,6 +1833,9 @@ Alias for --package-lock
When used with SSO-enabled \`auth-type\`s, configures how regularly the
registry should be polled while the user is completing authentication.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`sso-type\`
* Default: "oauth"
@@ -1416,6 +1845,9 @@ registry should be polled while the user is completing authentication.
If \`--auth-type=sso\`, the type of SSO type to use.
+<!-- automatically generated, do not edit manually -->
+<!-- see lib/utils/config/definitions.js -->
+
#### \`tmp\`
* Default: The value returned by the Node.js \`os.tmpdir()\` method
diff --git a/deps/npm/tap-snapshots/test/lib/utils/error-message.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/error-message.js.test.cjs
index 8adb33c395..7bf67868a7 100644
--- a/deps/npm/tap-snapshots/test/lib/utils/error-message.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/utils/error-message.js.test.cjs
@@ -1537,9 +1537,7 @@ Object {
String(
Merge conflict detected in your package.json.
- Please resolve the package.json conflict and retry the command:
-
- $ arg v
+ Please resolve the package.json conflict and retry.
),
],
],
diff --git a/deps/npm/tap-snapshots/test/lib/utils/npm-usage.js.test.cjs b/deps/npm/tap-snapshots/test/lib/utils/npm-usage.js.test.cjs
index 17df1aa1f5..316759513a 100644
--- a/deps/npm/tap-snapshots/test/lib/utils/npm-usage.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/utils/npm-usage.js.test.cjs
@@ -251,7 +251,8 @@ All commands:
npm cache add <tarball url>
npm cache add <git url>
npm cache add <name>@<version>
- npm cache clean
+ npm cache clean [<key>]
+ npm cache ls [<name>@<version>]
npm cache verify
Options:
diff --git a/deps/npm/tap-snapshots/test/lib/view.js.test.cjs b/deps/npm/tap-snapshots/test/lib/view.js.test.cjs
index 41d7a80fe3..27ba7b1eb6 100644
--- a/deps/npm/tap-snapshots/test/lib/view.js.test.cjs
+++ b/deps/npm/tap-snapshots/test/lib/view.js.test.cjs
@@ -77,7 +77,7 @@ dist
.tarball:http://hm.blue.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -94,7 +94,7 @@ dist
.tarball:http://hm.blue.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -118,7 +118,7 @@ dist
.tarball:http://hm.green.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dependencies:
red: 1.0.0
@@ -178,7 +178,7 @@ dist
.tarball:http://hm.orange.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -200,7 +200,7 @@ dist
.tarball:http://hm.green.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dependencies:
red: 1.0.0
@@ -223,7 +223,7 @@ dist
.tarball:http://hm.pink.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -238,7 +238,7 @@ dist
.tarball:http://hm.black.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dependencies:
0: 1.0.0
@@ -280,7 +280,7 @@ dist
.tarball:http://hm.cyan.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -297,7 +297,7 @@ dist
.tarball:http://hm.blue.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -401,7 +401,7 @@ dist
.tarball:http://hm.green.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dependencies:
red: 1.0.0
@@ -421,7 +421,7 @@ dist
.tarball:http://hm.orange.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
@@ -469,7 +469,7 @@ dist
.tarball:http://hm.green.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dependencies:
red: 1.0.0
@@ -496,7 +496,7 @@ dist
.tarball:http://hm.pink.com/1.0.0.tgz
.shasum:123
.integrity:---
-.unpackedSize:1 B
+.unpackedSize:1 B
dist-tags:
latest: 1.0.0
diff --git a/deps/npm/test/fixtures/mock-npm.js b/deps/npm/test/fixtures/mock-npm.js
index e3be10b4b9..3faf8d5cf4 100644
--- a/deps/npm/test/fixtures/mock-npm.js
+++ b/deps/npm/test/fixtures/mock-npm.js
@@ -9,6 +9,10 @@ for (const level in npmlog.levels)
const { title, execPath } = process
const RealMockNpm = (t, otherMocks = {}) => {
+ t.afterEach(() => {
+ outputs.length = 0
+ logs.length = 0
+ })
t.teardown(() => {
npm.perfStop()
npmlog.record.length = 0
@@ -22,6 +26,9 @@ const RealMockNpm = (t, otherMocks = {}) => {
})
const logs = []
const outputs = []
+ const joinedOutput = () => {
+ return outputs.map(o => o.join(' ')).join('\n')
+ }
const npm = t.mock('../../lib/npm.js', otherMocks)
const command = async (command, args = []) => {
return new Promise((resolve, reject) => {
@@ -43,7 +50,7 @@ const RealMockNpm = (t, otherMocks = {}) => {
}
}
npm.output = (...msg) => outputs.push(msg)
- return { npm, logs, outputs, command }
+ return { npm, logs, outputs, command, joinedOutput }
}
const realConfig = require('../../lib/utils/config')
diff --git a/deps/npm/test/lib/cache.js b/deps/npm/test/lib/cache.js
index d3d6f5b884..c640530320 100644
--- a/deps/npm/test/lib/cache.js
+++ b/deps/npm/test/lib/cache.js
@@ -1,6 +1,7 @@
const t = require('tap')
const { fake: mockNpm } = require('../fixtures/mock-npm.js')
const path = require('path')
+const npa = require('npm-package-arg')
const usageUtil = () => 'usage instructions'
@@ -34,16 +35,104 @@ const pacote = {
},
}
+let cacacheEntries = {}
+let cacacheContent = {}
+
+const setupCacacheFixture = () => {
+ cacacheEntries = {}
+ cacacheContent = {}
+ const pkgs = [
+ ['webpack@4.44.1', 'https://registry.npmjs.org', true],
+ ['npm@1.2.0', 'https://registry.npmjs.org', true],
+ ['webpack@4.47.0', 'https://registry.npmjs.org', true],
+ ['foo@1.2.3-beta', 'https://registry.npmjs.org', true],
+ ['ape-ecs@2.1.7', 'https://registry.npmjs.org', true],
+ ['@fritzy/staydown@3.1.1', 'https://registry.npmjs.org', true],
+ ['@gar/npm-expansion@2.1.0', 'https://registry.npmjs.org', true],
+ ['@gar/npm-expansion@3.0.0-beta', 'https://registry.npmjs.org', true],
+ ['extemporaneously@44.2.2', 'https://somerepo.github.org', false],
+ ['corrupted@3.1.0', 'https://registry.npmjs.org', true],
+ ['missing-dist@23.0.0', 'https://registry.npmjs.org', true],
+ ['missing-version@16.2.0', 'https://registry.npmjs.org', true],
+ ]
+ pkgs.forEach(pkg => addCacachePkg(...pkg))
+ // corrupt the packument
+ cacacheContent[
+ [cacacheEntries['make-fetch-happen:request-cache:https://registry.npmjs.org/corrupted'].integrity]
+ ].data = Buffer.from('<>>>}"')
+ // nuke the version dist
+ cacacheContent[
+ [cacacheEntries['make-fetch-happen:request-cache:https://registry.npmjs.org/missing-dist'].integrity]
+ ].data = Buffer.from(JSON.stringify({ versions: { '23.0.0': {} } }))
+ // make the version a non-object
+ cacacheContent[
+ [cacacheEntries['make-fetch-happen:request-cache:https://registry.npmjs.org/missing-version'].integrity]
+ ].data = Buffer.from(JSON.stringify({ versions: 'hello' }))
+}
+
+const packuments = {}
+
+let contentId = 0
const cacacheVerifyStats = {
keptSize: 100,
verifiedContent: 1,
totalEntries: 1,
runTime: { total: 2000 },
}
+
+const addCacacheKey = (key, content) => {
+ contentId++
+ cacacheEntries[key] = { integrity: `${contentId}` }
+ cacacheContent[`${contentId}`] = {}
+}
+const addCacachePkg = (spec, registry, publicURL) => {
+ const parts = npa(spec)
+ const ver = parts.rawSpec || '1.0.0'
+ let url = `${registry}/${parts.name}/-/${parts.name}-${ver}.tgz`
+ if (!publicURL)
+ url = `${registry}/aabbcc/${contentId}`
+ const key = `make-fetch-happen:request-cache:${url}`
+ const pkey = `make-fetch-happen:request-cache:${registry}/${parts.escapedName}`
+ if (!packuments[parts.escapedName]) {
+ packuments[parts.escapedName] = {
+ versions: {},
+ }
+ addCacacheKey(pkey)
+ }
+ packuments[parts.escapedName].versions[ver] = {
+ dist: {
+ tarball: url,
+ },
+ }
+ addCacacheKey(key)
+ cacacheContent[cacacheEntries[pkey].integrity] = {
+ data: Buffer.from(JSON.stringify(packuments[parts.escapedName])),
+ }
+}
+
const cacache = {
verify: (path) => {
return cacacheVerifyStats
},
+ get: (path, key) => {
+ if (cacacheEntries[key] === undefined
+ || cacacheContent[cacacheEntries[key].integrity] === undefined)
+ throw new Error()
+ return cacacheContent[cacacheEntries[key].integrity]
+ },
+ rm: {
+ entry: (path, key) => {
+ if (cacacheEntries[key] === undefined)
+ throw new Error()
+ delete cacacheEntries[key]
+ },
+ content: (path, sha) => {
+ delete cacacheContent[sha]
+ },
+ },
+ ls: (path) => {
+ return cacacheEntries
+ },
}
const Cache = t.mock('../../lib/cache.js', {
@@ -61,6 +150,11 @@ const npm = mockNpm({
output: (msg) => {
outputOutput.push(msg)
},
+ log: {
+ warn: (...args) => {
+ logOutput.push(['warn', ...args])
+ },
+ },
})
const cache = new Cache(npm)
@@ -94,13 +188,6 @@ t.test('cache clean (force)', t => {
})
})
-t.test('cache clean with arg', t => {
- cache.exec(['rm', 'pkg'], err => {
- t.match(err.message, 'does not accept arguments', 'should throw error')
- t.end()
- })
-})
-
t.test('cache add no arg', t => {
t.teardown(() => {
logOutput = []
@@ -136,7 +223,7 @@ t.test('cache add pkg only', t => {
t.test('cache add multiple pkgs', t => {
t.teardown(() => {
- logOutput = []
+ outputOutput = []
tarballStreamSpec = ''
tarballStreamOpts = {}
})
@@ -154,6 +241,182 @@ t.test('cache add multiple pkgs', t => {
})
})
+t.test('cache ls', t => {
+ t.teardown(() => {
+ outputOutput = []
+ logOutput = []
+ })
+ setupCacacheFixture()
+ cache.exec(['ls'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@fritzy/staydown/-/@fritzy/staydown-3.1.1.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@fritzy%2fstaydown',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@gar/npm-expansion/-/@gar/npm-expansion-2.1.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@gar/npm-expansion/-/@gar/npm-expansion-3.0.0-beta.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@gar%2fnpm-expansion',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/ape-ecs',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/ape-ecs/-/ape-ecs-2.1.7.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/corrupted',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/corrupted/-/corrupted-3.1.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/foo',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/foo/-/foo-1.2.3-beta.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-dist',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-dist/-/missing-dist-23.0.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-version',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-version/-/missing-version-16.2.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/npm',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/npm/-/npm-1.2.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack/-/webpack-4.47.0.tgz',
+ 'make-fetch-happen:request-cache:https://somerepo.github.org/aabbcc/14',
+ 'make-fetch-happen:request-cache:https://somerepo.github.org/extemporaneously',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls pkgs', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'webpack@>4.44.1', 'npm'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/npm',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/npm/-/npm-1.2.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack/-/webpack-4.47.0.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls special', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'foo@1.2.3-beta'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/foo',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/foo/-/foo-1.2.3-beta.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls nonpublic registry', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'extemporaneously'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://somerepo.github.org/aabbcc/14',
+ 'make-fetch-happen:request-cache:https://somerepo.github.org/extemporaneously',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls tagged', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'webpack@latest'], err => {
+ t.match(err.message, 'tagged package', 'should throw warning')
+ t.end()
+ })
+})
+
+t.test('cache ls scoped and scoped slash', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', '@fritzy/staydown', '@gar/npm-expansion'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@fritzy/staydown/-/@fritzy/staydown-3.1.1.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@fritzy%2fstaydown',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@gar/npm-expansion/-/@gar/npm-expansion-2.1.0.tgz',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/@gar%2fnpm-expansion',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls corrupted', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'corrupted'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/corrupted',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/corrupted/-/corrupted-3.1.0.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls missing packument dist', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'missing-dist'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-dist',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-dist/-/missing-dist-23.0.0.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache ls missing packument version not an object', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['ls', 'missing-version'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-version',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/missing-version/-/missing-version-16.2.0.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache rm', t => {
+ t.teardown(() => {
+ outputOutput = []
+ })
+ cache.exec(['rm',
+ 'make-fetch-happen:request-cache:https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz'], err => {
+ t.error(err)
+ t.strictSame(outputOutput, [
+ 'Deleted: make-fetch-happen:request-cache:https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz',
+ ])
+ t.end()
+ })
+})
+
+t.test('cache rm unfound', t => {
+ t.teardown(() => {
+ outputOutput = []
+ logOutput = []
+ })
+ cache.exec(['rm', 'made-up-key'], err => {
+ t.error(err)
+ t.strictSame(logOutput, [
+ ['warn', 'Not Found: made-up-key'],
+ ], 'logs correctly')
+ t.end()
+ })
+})
+
t.test('cache verify', t => {
t.teardown(() => {
outputOutput = []
diff --git a/deps/npm/test/lib/cli.js b/deps/npm/test/lib/cli.js
index b85c981cd0..2c0b6c0ba7 100644
--- a/deps/npm/test/lib/cli.js
+++ b/deps/npm/test/lib/cli.js
@@ -104,6 +104,32 @@ t.test('calling with --versions calls npm version with no args', async t => {
t.strictSame(exitHandlerCalled, [])
})
+t.test('logged argv is sanitized', async t => {
+ const proc = processMock({
+ argv: ['node', 'npm', 'testcommand', 'https://username:password@npmjs.org/test_url_with_a_password'],
+ })
+ const { npm } = mockNpm(t)
+ const cli = cliMock(npm)
+
+ npm.commands.testcommand = (args, cb) => {
+ cb()
+ }
+
+ await cli(proc)
+ t.equal(proc.title, 'npm')
+ t.strictSame(logs, [
+ 'pause',
+ ['verbose', 'cli', [
+ 'node',
+ 'npm',
+ 'testcommand',
+ 'https://username:***@npmjs.org/test_url_with_a_password',
+ ]],
+ ['info', 'using', 'npm@%s', npm.version],
+ ['info', 'using', 'node@%s', process.version],
+ ])
+})
+
t.test('print usage if no params provided', async t => {
const proc = processMock({
argv: ['node', 'npm'],
diff --git a/deps/npm/test/lib/exec.js b/deps/npm/test/lib/exec.js
index 6d99c7959d..03a1bedf97 100644
--- a/deps/npm/test/lib/exec.js
+++ b/deps/npm/test/lib/exec.js
@@ -25,6 +25,7 @@ const LOG_WARN = []
let PROGRESS_IGNORED = false
const flatOptions = {
npxCache: 'npx-cache-dir',
+ color: false,
cache: 'cache-dir',
legacyPeerDeps: false,
package: [],
@@ -109,12 +110,13 @@ t.afterEach(() => {
LOG_WARN.length = 0
PROGRESS_IGNORED = false
flatOptions.legacyPeerDeps = false
- config.color = false
+ flatOptions.color = false
config['script-shell'] = 'shell-cmd'
config.package = []
flatOptions.package = []
config.call = ''
config.yes = true
+ npm.color = false
npm.localBin = 'local-bin'
npm.globalBin = 'global-bin'
})
@@ -268,7 +270,8 @@ t.test('npm exec <noargs>, run interactive shell', t => {
t.test('print message with color when tty and not in CI', t => {
CI_NAME = null
process.stdin.isTTY = true
- config.color = true
+ npm.color = true
+ flatOptions.color = true
run(t, true, () => {
t.strictSame(LOG_WARN, [])
@@ -1204,7 +1207,8 @@ t.test('workspaces', t => {
})
})
- config.color = true
+ npm.color = true
+ flatOptions.color = true
npm._mockOutputs.length = 0
await new Promise((res, rej) => {
exec.execWorkspaces([], ['a'], er => {
diff --git a/deps/npm/test/lib/find-dupes.js b/deps/npm/test/lib/find-dupes.js
index c7b33ceb6e..17940764b9 100644
--- a/deps/npm/test/lib/find-dupes.js
+++ b/deps/npm/test/lib/find-dupes.js
@@ -1,24 +1,26 @@
const t = require('tap')
-const FindDupes = require('../../lib/find-dupes.js')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('should run dedupe in dryRun mode', (t) => {
- t.plan(3)
- const findDupesTest = new FindDupes({
- config: {
- set: (k, v) => {
- t.match(k, 'dry-run')
- t.match(v, true)
- },
+t.test('should run dedupe in dryRun mode', async (t) => {
+ t.plan(5)
+ const { npm, command } = mockNpm(t, {
+ '@npmcli/arborist': function (args) {
+ t.ok(args, 'gets options object')
+ t.ok(args.path, 'gets path option')
+ t.ok(args.dryRun, 'is called in dryRun mode')
+ this.dedupe = () => {
+ t.ok(true, 'dedupe is called')
+ }
},
- commands: {
- dedupe: (args, cb) => {
- t.match(args, [])
- cb()
- },
+ '../../lib/utils/reify-finish.js': (npm, arb) => {
+ t.ok(arb, 'gets arborist tree')
},
})
- findDupesTest.exec({}, () => {
- t.end()
- })
+ await npm.load()
+ // explicitly set to false so we can be 100% sure it's always true when it
+ // hits arborist
+ npm.config.set('dry-run', false)
+ npm.config.set('prefix', 'foo')
+ await command('find-dupes')
})
diff --git a/deps/npm/test/lib/get.js b/deps/npm/test/lib/get.js
index 9b77fbba3e..30e26b7453 100644
--- a/deps/npm/test/lib/get.js
+++ b/deps/npm/test/lib/get.js
@@ -1,16 +1,16 @@
const t = require('tap')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('should retrieve values from npm.commands.config', (t) => {
- const Get = t.mock('../../lib/get.js')
- const get = new Get({
- commands: {
- config: ([action, arg]) => {
- t.equal(action, 'get', 'should use config get action')
- t.equal(arg, 'foo', 'should use expected key')
- t.end()
- },
- },
- })
-
- get.exec(['foo'])
+t.test('should retrieve values from config', async t => {
+ const { joinedOutput, command, npm } = mockNpm(t)
+ const name = 'editor'
+ const value = 'vigor'
+ await npm.load()
+ npm.config.set(name, value)
+ await command('get', [name])
+ t.equal(
+ joinedOutput(),
+ value,
+ 'outputs config item'
+ )
})
diff --git a/deps/npm/test/lib/load-all.js b/deps/npm/test/lib/load-all.js
index e6e4078053..c38c244934 100644
--- a/deps/npm/test/lib/load-all.js
+++ b/deps/npm/test/lib/load-all.js
@@ -1,15 +1,24 @@
const t = require('tap')
const glob = require('glob')
const { resolve } = require('path')
+const { real: mockNpm } = require('../fixtures/mock-npm')
const full = process.env.npm_lifecycle_event === 'check-coverage'
if (!full)
t.pass('nothing to do here, not checking for full coverage')
else {
- // some files do config.get() on load, so have to load npm first
- const npm = require('../../lib/npm.js')
- t.test('load npm first', t => npm.load(t.end))
+ const { npm } = mockNpm(t)
+
+ t.teardown(() => {
+ const exitHandler = require('../../lib/utils/exit-handler.js')
+ exitHandler.setNpm(npm)
+ exitHandler()
+ })
+
+ t.test('load npm first', async t => {
+ await npm.load()
+ })
t.test('load all the files', t => {
// just load all the files so we measure coverage for the missing tests
@@ -21,11 +30,4 @@ else {
t.pass('loaded all files')
t.end()
})
-
- t.test('call the exit handler so we dont freak out', t => {
- const exitHandler = require('../../lib/utils/exit-handler.js')
- exitHandler.setNpm(npm)
- exitHandler()
- t.end()
- })
}
diff --git a/deps/npm/test/lib/prefix.js b/deps/npm/test/lib/prefix.js
index 526631388e..18a37f3ccd 100644
--- a/deps/npm/test/lib/prefix.js
+++ b/deps/npm/test/lib/prefix.js
@@ -1,19 +1,13 @@
const t = require('tap')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('prefix', (t) => {
- t.plan(3)
- const dir = '/prefix/dir'
-
- const Prefix = require('../../lib/prefix.js')
- const prefix = new Prefix({
- prefix: dir,
- output: (output) => {
- t.equal(output, dir, 'prints the correct directory')
- },
- })
-
- prefix.exec([], (err) => {
- t.error(err, 'npm prefix')
- t.ok('should have printed directory')
- })
+t.test('prefix', async (t) => {
+ const { joinedOutput, command, npm } = mockNpm(t)
+ await npm.load()
+ await command('prefix')
+ t.equal(
+ joinedOutput(),
+ npm.prefix,
+ 'outputs npm.prefix'
+ )
})
diff --git a/deps/npm/test/lib/prune.js b/deps/npm/test/lib/prune.js
index 87bb1370f3..3e47feb461 100644
--- a/deps/npm/test/lib/prune.js
+++ b/deps/npm/test/lib/prune.js
@@ -1,7 +1,9 @@
const t = require('tap')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('should prune using Arborist', (t) => {
- const Prune = t.mock('../../lib/prune.js', {
+t.test('should prune using Arborist', async (t) => {
+ t.plan(4)
+ const { command, npm } = mockNpm(t, {
'@npmcli/arborist': function (args) {
t.ok(args, 'gets options object')
t.ok(args.path, 'gets path option')
@@ -13,16 +15,6 @@ t.test('should prune using Arborist', (t) => {
t.ok(arb, 'gets arborist tree')
},
})
- const prune = new Prune({
- prefix: 'foo',
- flatOptions: {
- foo: 'bar',
- },
- })
- prune.exec(null, er => {
- if (er)
- throw er
- t.ok(true, 'callback is called')
- t.end()
- })
+ await npm.load()
+ await command('prune')
})
diff --git a/deps/npm/test/lib/restart.js b/deps/npm/test/lib/restart.js
index 9719476c41..153c314472 100644
--- a/deps/npm/test/lib/restart.js
+++ b/deps/npm/test/lib/restart.js
@@ -1,16 +1,36 @@
const t = require('tap')
-let runArgs
-const npm = {
- commands: {
- 'run-script': (args, cb) => {
- runArgs = args
- cb()
- },
- },
-}
-const Restart = require('../../lib/restart.js')
-const restart = new Restart(npm)
-restart.exec(['foo'], () => {
- t.match(runArgs, ['restart', 'foo'])
- t.end()
+const spawk = require('spawk')
+const { real: mockNpm } = require('../fixtures/mock-npm')
+
+spawk.preventUnmatched()
+t.teardown(() => {
+ spawk.unload()
+})
+
+// TODO this ... smells. npm "script-shell" config mentions defaults but those
+// are handled by run-script, not npm. So for now we have to tie tests to some
+// pretty specific internals of runScript
+const makeSpawnArgs = require('@npmcli/run-script/lib/make-spawn-args.js')
+
+t.test('should run stop script from package.json', async t => {
+ const prefix = t.testdir({
+ 'package.json': JSON.stringify({
+ name: 'x',
+ version: '1.2.3',
+ scripts: {
+ restart: 'node ./test-restart.js',
+ },
+ }),
+ })
+ const { command, npm } = mockNpm(t)
+ await npm.load()
+ npm.log.level = 'silent'
+ npm.localPrefix = prefix
+ const [scriptShell] = makeSpawnArgs({ path: prefix })
+ const script = spawk.spawn(scriptShell, (args) => {
+ t.ok(args.includes('node ./test-restart.js "foo"'), 'ran stop script with extra args')
+ return true
+ })
+ await command('restart', ['foo'])
+ t.ok(script.called, 'script ran')
})
diff --git a/deps/npm/test/lib/root.js b/deps/npm/test/lib/root.js
index 5460f3d498..7b91654c6c 100644
--- a/deps/npm/test/lib/root.js
+++ b/deps/npm/test/lib/root.js
@@ -1,19 +1,13 @@
const t = require('tap')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('root', (t) => {
- t.plan(3)
- const dir = '/root/dir'
-
- const Root = require('../../lib/root.js')
- const root = new Root({
- dir,
- output: (output) => {
- t.equal(output, dir, 'prints the correct directory')
- },
- })
-
- root.exec([], (err) => {
- t.error(err, 'npm root')
- t.ok('should have printed directory')
- })
+t.test('prefix', async (t) => {
+ const { joinedOutput, command, npm } = mockNpm(t)
+ await npm.load()
+ await command('root')
+ t.equal(
+ joinedOutput(),
+ npm.dir,
+ 'outputs npm.dir'
+ )
})
diff --git a/deps/npm/test/lib/set.js b/deps/npm/test/lib/set.js
index f51065a4b2..14d094001b 100644
--- a/deps/npm/test/lib/set.js
+++ b/deps/npm/test/lib/set.js
@@ -1,5 +1,32 @@
const t = require('tap')
+// can't run this until npm set can save to npm.localPrefix
+t.skip('npm set', async t => {
+ const { real: mockNpm } = require('../fixtures/mock-npm')
+ const { joinedOutput, command, npm } = mockNpm(t)
+ await npm.load()
+
+ t.test('no args', async t => {
+ t.rejects(
+ command('set'),
+ /Usage:/,
+ 'prints usage'
+ )
+ })
+
+ t.test('test-config-item', async t => {
+ npm.localPrefix = t.testdir({})
+ t.not(npm.config.get('test-config-item', 'project'), 'test config value', 'config is not already new value')
+ // This will write to ~/.npmrc!
+ // Don't unskip until we can write to project level
+ await command('set', ['test-config-item=test config value'])
+ t.equal(joinedOutput(), '', 'outputs nothing')
+ t.equal(npm.config.get('test-config-item', 'project'), 'test config value', 'config is set to new value')
+ })
+})
+
+// Everything after this can go away once the above test is unskipped
+
let configArgs = null
const npm = {
commands: {
diff --git a/deps/npm/test/lib/start.js b/deps/npm/test/lib/start.js
index 4e77f9691b..5c38c71a9a 100644
--- a/deps/npm/test/lib/start.js
+++ b/deps/npm/test/lib/start.js
@@ -1,16 +1,36 @@
const t = require('tap')
-let runArgs
-const npm = {
- commands: {
- 'run-script': (args, cb) => {
- runArgs = args
- cb()
- },
- },
-}
-const Start = require('../../lib/start.js')
-const start = new Start(npm)
-start.exec(['foo'], () => {
- t.match(runArgs, ['start', 'foo'])
- t.end()
+const spawk = require('spawk')
+const { real: mockNpm } = require('../fixtures/mock-npm')
+
+spawk.preventUnmatched()
+t.teardown(() => {
+ spawk.unload()
+})
+
+// TODO this ... smells. npm "script-shell" config mentions defaults but those
+// are handled by run-script, not npm. So for now we have to tie tests to some
+// pretty specific internals of runScript
+const makeSpawnArgs = require('@npmcli/run-script/lib/make-spawn-args.js')
+
+t.test('should run stop script from package.json', async t => {
+ const prefix = t.testdir({
+ 'package.json': JSON.stringify({
+ name: 'x',
+ version: '1.2.3',
+ scripts: {
+ start: 'node ./test-start.js',
+ },
+ }),
+ })
+ const { command, npm } = mockNpm(t)
+ await npm.load()
+ npm.log.level = 'silent'
+ npm.localPrefix = prefix
+ const [scriptShell] = makeSpawnArgs({ path: prefix })
+ const script = spawk.spawn(scriptShell, (args) => {
+ t.ok(args.includes('node ./test-start.js "foo"'), 'ran start script with extra args')
+ return true
+ })
+ await command('start', ['foo'])
+ t.ok(script.called, 'script ran')
})
diff --git a/deps/npm/test/lib/stop.js b/deps/npm/test/lib/stop.js
index 92ca84bd87..04cdb4e5e7 100644
--- a/deps/npm/test/lib/stop.js
+++ b/deps/npm/test/lib/stop.js
@@ -1,16 +1,36 @@
const t = require('tap')
-let runArgs
-const npm = {
- commands: {
- 'run-script': (args, cb) => {
- runArgs = args
- cb()
- },
- },
-}
-const Stop = require('../../lib/stop.js')
-const stop = new Stop(npm)
-stop.exec(['foo'], () => {
- t.match(runArgs, ['stop', 'foo'])
- t.end()
+const spawk = require('spawk')
+const { real: mockNpm } = require('../fixtures/mock-npm')
+
+spawk.preventUnmatched()
+t.teardown(() => {
+ spawk.unload()
+})
+
+// TODO this ... smells. npm "script-shell" config mentions defaults but those
+// are handled by run-script, not npm. So for now we have to tie tests to some
+// pretty specific internals of runScript
+const makeSpawnArgs = require('@npmcli/run-script/lib/make-spawn-args.js')
+
+t.test('should run stop script from package.json', async t => {
+ const prefix = t.testdir({
+ 'package.json': JSON.stringify({
+ name: 'x',
+ version: '1.2.3',
+ scripts: {
+ stop: 'node ./test-stop.js',
+ },
+ }),
+ })
+ const { command, npm } = mockNpm(t)
+ await npm.load()
+ npm.log.level = 'silent'
+ npm.localPrefix = prefix
+ const [scriptShell] = makeSpawnArgs({ path: prefix })
+ const script = spawk.spawn(scriptShell, (args) => {
+ t.ok(args.includes('node ./test-stop.js "foo"'), 'ran stop script with extra args')
+ return true
+ })
+ await command('stop', ['foo'])
+ t.ok(script.called, 'script ran')
})
diff --git a/deps/npm/test/lib/test.js b/deps/npm/test/lib/test.js
index c151b1e825..d597ba2743 100644
--- a/deps/npm/test/lib/test.js
+++ b/deps/npm/test/lib/test.js
@@ -1,38 +1,36 @@
const t = require('tap')
-let RUN_ARGS = null
-const npm = {
- commands: {
- 'run-script': (args, cb) => {
- RUN_ARGS = args
- cb()
- },
- },
-}
-const Test = require('../../lib/test.js')
-const test = new Test(npm)
+const spawk = require('spawk')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('run a test', t => {
- test.exec([], (er) => {
- t.strictSame(RUN_ARGS, ['test'], 'added "test" to the args')
- })
- test.exec(['hello', 'world'], (er) => {
- t.strictSame(RUN_ARGS, ['test', 'hello', 'world'], 'added positional args')
- })
+spawk.preventUnmatched()
+t.teardown(() => {
+ spawk.unload()
+})
- const lcErr = Object.assign(new Error('should not see this'), {
- code: 'ELIFECYCLE',
- })
- const otherErr = new Error('should see this')
+// TODO this ... smells. npm "script-shell" config mentions defaults but those
+// are handled by run-script, not npm. So for now we have to tie tests to some
+// pretty specific internals of runScript
+const makeSpawnArgs = require('@npmcli/run-script/lib/make-spawn-args.js')
- npm.commands['run-script'] = (args, cb) => cb(lcErr)
- test.exec([], (er) => {
- t.equal(er, 'Test failed. See above for more details.')
+t.test('should run stop script from package.json', async t => {
+ const prefix = t.testdir({
+ 'package.json': JSON.stringify({
+ name: 'x',
+ version: '1.2.3',
+ scripts: {
+ test: 'node ./test-test.js',
+ },
+ }),
})
-
- npm.commands['run-script'] = (args, cb) => cb(otherErr)
- test.exec([], (er) => {
- t.match(er, { message: 'should see this' })
+ const { command, npm } = mockNpm(t)
+ await npm.load()
+ npm.log.level = 'silent'
+ npm.localPrefix = prefix
+ const [scriptShell] = makeSpawnArgs({ path: prefix })
+ const script = spawk.spawn(scriptShell, (args) => {
+ t.ok(args.includes('node ./test-test.js "foo"'), 'ran test script with extra args')
+ return true
})
-
- t.end()
+ await command('test', ['foo'])
+ t.ok(script.called, 'script ran')
})
diff --git a/deps/npm/test/lib/utils/completion/installed-deep.js b/deps/npm/test/lib/utils/completion/installed-deep.js
index 21e77a568b..aa0d85ec10 100644
--- a/deps/npm/test/lib/utils/completion/installed-deep.js
+++ b/deps/npm/test/lib/utils/completion/installed-deep.js
@@ -219,6 +219,8 @@ t.test('limit depth', async t => {
[
['bar', '-g'],
['foo', '-g'],
+ // XXX https://github.com/npm/statusboard/issues/380
+ ['a-bar', '-g'],
'a', 'b',
'c', 'ch',
'd', 'e',
@@ -248,6 +250,8 @@ t.test('limit depth as global', async t => {
[
'bar',
'foo',
+ // https://github.com/npm/statusboard/issues/380
+ 'a-bar',
],
'should reorder so that packages above that level depth goes last'
)
diff --git a/deps/npm/test/lib/utils/error-message.js b/deps/npm/test/lib/utils/error-message.js
index 3fdfb8cc25..07328d5887 100644
--- a/deps/npm/test/lib/utils/error-message.js
+++ b/deps/npm/test/lib/utils/error-message.js
@@ -15,6 +15,9 @@ const { resolve } = require('path')
const npm = require('../../../lib/npm.js')
const CACHE = '/some/cache/dir'
npm.config = {
+ flat: {
+ color: false,
+ },
loaded: false,
localPrefix: '/some/prefix/dir',
get: key => {
@@ -289,7 +292,7 @@ t.test('json parse', t => {
process.argv = ['arg', 'v']
t.matchSnapshot(errorMessage(Object.assign(new Error('conflicted'), {
code: 'EJSONPARSE',
- file: resolve(dir, 'package.json'),
+ path: resolve(dir, 'package.json'),
}), npm))
t.end()
})
@@ -311,7 +314,7 @@ t.test('json parse', t => {
process.argv = ['arg', 'v']
t.matchSnapshot(errorMessage(Object.assign(new Error('not json'), {
code: 'EJSONPARSE',
- file: resolve(dir, 'package.json'),
+ path: resolve(dir, 'package.json'),
}), npm))
t.end()
})
@@ -327,7 +330,7 @@ t.test('json parse', t => {
process.argv = ['arg', 'v']
t.matchSnapshot(errorMessage(Object.assign(new Error('not json'), {
code: 'EJSONPARSE',
- file: `${dir}/blerg.json`,
+ path: `${dir}/blerg.json`,
}), npm))
t.end()
})
@@ -467,7 +470,7 @@ t.test('explain ERESOLVE errors', t => {
t.matchSnapshot(errorMessage(er, npm))
t.match(EXPLAIN_CALLED, [[
er,
- undefined,
+ false,
path.resolve(npm.cache, 'eresolve-report.txt'),
]])
t.end()
diff --git a/deps/npm/test/lib/utils/exit-handler.js b/deps/npm/test/lib/utils/exit-handler.js
index 981ac9a32b..c88a1aef67 100644
--- a/deps/npm/test/lib/utils/exit-handler.js
+++ b/deps/npm/test/lib/utils/exit-handler.js
@@ -336,15 +336,14 @@ t.test('defaults to log error msg if stack is missing', (t) => {
t.end()
})
-t.test('exits cleanly when emitting exit event', (t) => {
- t.plan(1)
+t.test('exits uncleanly when only emitting exit event', (t) => {
+ t.plan(2)
npm.log.level = 'silent'
process.emit('exit')
- t.match(
- npm.log.record.find(r => r.level === 'info'),
- { prefix: 'ok', message: '' }
- )
+ const logData = fs.readFileSync(logFile, 'utf8')
+ t.match(logData, 'Exit handler never called!')
+ t.match(process.exitCode, 1, 'exitCode coerced to 1')
t.end()
})
diff --git a/deps/npm/test/lib/utils/setup-log.js b/deps/npm/test/lib/utils/setup-log.js
index 86befe6e29..7f907bc7e4 100644
--- a/deps/npm/test/lib/utils/setup-log.js
+++ b/deps/npm/test/lib/utils/setup-log.js
@@ -84,12 +84,12 @@ t.test('setup with color=always and unicode', t => {
t.strictSame(WARN_CALLED, [['ERESOLVE', 'hello', { some: 'object' }]])
WARN_CALLED.length = 0
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: 'always',
unicode: true,
progress: false,
- })), true)
+ }))
npmlog.warn('ERESOLVE', 'hello', { some: { other: 'object' } })
t.strictSame(EXPLAIN_CALLED, [[{ some: { other: 'object' } }, true, 2]],
@@ -125,12 +125,12 @@ t.test('setup with color=true, no unicode, and non-TTY terminal', t => {
process.stderr.isTTY = false
process.stdout.isTTY = false
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: false,
progress: false,
heading: 'asdf',
- })), false)
+ }))
t.strictSame(settings, {
level: 'warn',
@@ -156,12 +156,12 @@ t.test('setup with color=true, no unicode, and dumb TTY terminal', t => {
process.stdout.isTTY = true
process.env.TERM = 'dumb'
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: true,
progress: false,
heading: 'asdf',
- })), true)
+ }))
t.strictSame(settings, {
level: 'warn',
@@ -187,12 +187,12 @@ t.test('setup with color=true, no unicode, and non-dumb TTY terminal', t => {
process.stdout.isTTY = true
process.env.TERM = 'totes not dum'
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: true,
progress: true,
heading: 'asdf',
- })), true)
+ }))
t.strictSame(settings, {
level: 'warn',
@@ -218,12 +218,12 @@ t.test('setup with non-TTY stdout, TTY stderr', t => {
process.stdout.isTTY = false
process.env.TERM = 'definitely not a dummy'
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: true,
progress: true,
heading: 'asdf',
- })), false)
+ }))
t.strictSame(settings, {
level: 'warn',
@@ -248,12 +248,12 @@ t.test('setup with TTY stdout, non-TTY stderr', t => {
process.stderr.isTTY = false
process.stdout.isTTY = true
- t.equal(setupLog(config({
+ setupLog(config({
loglevel: 'warn',
color: true,
progress: true,
heading: 'asdf',
- })), true)
+ }))
t.strictSame(settings, {
level: 'warn',
diff --git a/deps/npm/test/lib/utils/tar.js b/deps/npm/test/lib/utils/tar.js
index 2662d47ace..19d9491694 100644
--- a/deps/npm/test/lib/utils/tar.js
+++ b/deps/npm/test/lib/utils/tar.js
@@ -57,6 +57,8 @@ t.test('should log tarball contents with unicode', async (t) => {
logTar({
files: [],
bundled: [],
+ size: 0,
+ unpackedSize: 0,
integrity: '',
}, { unicode: true })
t.end()
@@ -75,6 +77,8 @@ t.test('should default to npmlog', async (t) => {
logTar({
files: [],
bundled: [],
+ size: 0,
+ unpackedSize: 0,
integrity: '',
})
t.end()
diff --git a/deps/npm/test/lib/whoami.js b/deps/npm/test/lib/whoami.js
index 9190e3858b..c54ee2a5a2 100644
--- a/deps/npm/test/lib/whoami.js
+++ b/deps/npm/test/lib/whoami.js
@@ -1,41 +1,25 @@
const t = require('tap')
-const { fake: mockNpm } = require('../fixtures/mock-npm')
+const { real: mockNpm } = require('../fixtures/mock-npm')
-t.test('whoami', (t) => {
- t.plan(3)
- const Whoami = t.mock('../../lib/whoami.js', {
- '../../lib/utils/get-identity.js': () => Promise.resolve('foo'),
- })
- const npm = mockNpm({
- config: { json: false },
- output: (output) => {
- t.equal(output, 'foo', 'should output the username')
- },
- })
-
- const whoami = new Whoami(npm)
+const username = 'foo'
+const { joinedOutput, command, npm } = mockNpm(t, {
+ '../../lib/utils/get-identity.js': () => Promise.resolve(username),
+})
- whoami.exec([], (err) => {
- t.error(err, 'npm whoami')
- t.ok('should successfully print username')
- })
+t.before(async () => {
+ await npm.load()
})
-t.test('whoami json', (t) => {
- t.plan(3)
- const Whoami = t.mock('../../lib/whoami.js', {
- '../../lib/utils/get-identity.js': () => Promise.resolve('foo'),
- })
- const npm = mockNpm({
- config: { json: true },
- output: (output) => {
- t.equal(output, '"foo"', 'should output the username')
- },
- })
- const whoami = new Whoami(npm)
+t.test('npm whoami', async (t) => {
+ await command('whoami')
+ t.equal(joinedOutput(), username, 'should print username')
+})
- whoami.exec([], (err) => {
- t.error(err, 'npm whoami')
- t.ok('should successfully print username as json')
+t.test('npm whoami --json', async (t) => {
+ t.teardown(() => {
+ npm.config.set('json', false)
})
+ npm.config.set('json', true)
+ await command('whoami')
+ t.equal(JSON.parse(joinedOutput()), username, 'should print username')
})