From 08e3366c7f533d12b318e86ef869bc4101e265c7 Mon Sep 17 00:00:00 2001
From: Ruy Adorno Description
the results to only the paths to the packages named. Note that nested
packages will also show the paths to the specified packages. For
example, running npm ls promzard
in npm’s source tree will show:
npm@7.7.5 /path/to/npm
+npm@7.7.6 /path/to/npm
└─┬ init-package-json@0.0.4
└── promzard@0.1.5
diff --git a/deps/npm/docs/output/commands/npm.html b/deps/npm/docs/output/commands/npm.html
index e6cd6878a22820..c71daa36198c67 100644
--- a/deps/npm/docs/output/commands/npm.html
+++ b/deps/npm/docs/output/commands/npm.html
@@ -148,7 +148,7 @@ Table of contents
npm <command> [args]
Version
-7.7.5
+7.7.6
Description
npm is the package manager for the Node JavaScript platform. It puts
modules in place so that node can find them, and manages dependency
diff --git a/deps/npm/docs/output/using-npm/config.html b/deps/npm/docs/output/using-npm/config.html
index 6fe8f828157683..717f1021e5c36a 100644
--- a/deps/npm/docs/output/using-npm/config.html
+++ b/deps/npm/docs/output/using-npm/config.html
@@ -811,7 +811,7 @@
long
Show extended information in npm ls
and npm search
.
maxsockets
-- Default: Infinity
+- Default: 15
- Type: Number
The maximum number of connections to use per origin (protocol/host/port
diff --git a/deps/npm/docs/output/using-npm/workspaces.html b/deps/npm/docs/output/using-npm/workspaces.html
index 0fb1391c7970c7..66ab8b1f793692 100644
--- a/deps/npm/docs/output/using-npm/workspaces.html
+++ b/deps/npm/docs/output/using-npm/workspaces.html
@@ -207,7 +207,7 @@
Using workspaces
in such a way that is also easy to publish these
nested workspaces to be consumed elsewhere.
Running commands in the context of workspaces
-You man use the workspace
configuration option to run commands in the context
+
You can use the workspace
configuration option to run commands in the context
of a configured workspace.
Following is a quick example on how to use the npm run
command in the context
of nested workspaces. For a project containing multiple workspaces, e.g:
diff --git a/deps/npm/lib/cli.js b/deps/npm/lib/cli.js
index 46859f150e3b9d..f42132f9443900 100644
--- a/deps/npm/lib/cli.js
+++ b/deps/npm/lib/cli.js
@@ -61,9 +61,6 @@ module.exports = (process) => {
impl(npm.argv, errorHandler)
else {
try {
- // I don't know why this is needed but we get a cb() not called if we
- // omit it
- npm.log.level = 'silent'
if (cmd) {
const didYouMean = require('./utils/did-you-mean.js')
const suggestions = await didYouMean(npm, npm.localPrefix, cmd)
@@ -71,6 +68,7 @@ module.exports = (process) => {
} else
npm.output(npm.usage)
process.exitCode = 1
+ return errorHandler()
} catch (err) {
errorHandler(err)
}
diff --git a/deps/npm/lib/utils/config/definitions.js b/deps/npm/lib/utils/config/definitions.js
index 512ea8af98cb4e..db66aa495ba0f4 100644
--- a/deps/npm/lib/utils/config/definitions.js
+++ b/deps/npm/lib/utils/config/definitions.js
@@ -1154,7 +1154,7 @@ define('long', {
})
define('maxsockets', {
- default: Infinity,
+ default: 15,
type: Number,
description: `
The maximum number of connections to use per origin (protocol/host/port
diff --git a/deps/npm/man/man1/npm-ls.1 b/deps/npm/man/man1/npm-ls.1
index b1fd65b15be901..61b45baff32442 100644
--- a/deps/npm/man/man1/npm-ls.1
+++ b/deps/npm/man/man1/npm-ls.1
@@ -26,7 +26,7 @@ example, running \fBnpm ls promzard\fP in npm's source tree will show:
.P
.RS 2
.nf
-npm@7\.7\.5 /path/to/npm
+npm@7\.7\.6 /path/to/npm
└─┬ init\-package\-json@0\.0\.4
└── promzard@0\.1\.5
.fi
diff --git a/deps/npm/man/man1/npm.1 b/deps/npm/man/man1/npm.1
index 81e5ab92149e27..db27e4087d1e47 100644
--- a/deps/npm/man/man1/npm.1
+++ b/deps/npm/man/man1/npm.1
@@ -10,7 +10,7 @@ npm [args]
.RE
.SS Version
.P
-7\.7\.5
+7\.7\.6
.SS Description
.P
npm is the package manager for the Node JavaScript platform\. It puts
diff --git a/deps/npm/man/man7/config.7 b/deps/npm/man/man7/config.7
index bd581c88809487..d232871c0c5df9 100644
--- a/deps/npm/man/man7/config.7
+++ b/deps/npm/man/man7/config.7
@@ -1065,7 +1065,7 @@ Show extended information in \fBnpm ls\fP and \fBnpm search\fP\|\.
.SS \fBmaxsockets\fP
.RS 0
.IP \(bu 2
-Default: Infinity
+Default: 15
.IP \(bu 2
Type: Number
diff --git a/deps/npm/man/man7/workspaces.7 b/deps/npm/man/man7/workspaces.7
index 2fa6a9ccccdd9e..f8c5a0c4d44740 100644
--- a/deps/npm/man/man7/workspaces.7
+++ b/deps/npm/man/man7/workspaces.7
@@ -92,7 +92,7 @@ in such a way that is also easy to npm help publish these
nested workspaces to be consumed elsewhere\.
.SS Running commands in the context of workspaces
.P
-You man use the \fBworkspace\fP configuration option to run commands in the context
+You can use the \fBworkspace\fP configuration option to run commands in the context
of a configured workspace\.
.P
Following is a quick example on how to use the \fBnpm run\fP command in the context
diff --git a/deps/npm/node_modules/@npmcli/metavuln-calculator/lib/get-dep-spec.js b/deps/npm/node_modules/@npmcli/metavuln-calculator/lib/get-dep-spec.js
index 35e83d02a1b632..8d1d72b8c46eb5 100644
--- a/deps/npm/node_modules/@npmcli/metavuln-calculator/lib/get-dep-spec.js
+++ b/deps/npm/node_modules/@npmcli/metavuln-calculator/lib/get-dep-spec.js
@@ -8,8 +8,8 @@ module.exports = (mani, name) => {
peerDependencies: peerDeps = {},
} = mani
- return typeof deps[name] === 'string' ? deps[name]
- : typeof optDeps[name] === 'string' ? optDeps[name]
- : typeof peerDeps[name] === 'string' ? peerDeps[name]
+ return deps && typeof deps[name] === 'string' ? deps[name]
+ : optDeps && typeof optDeps[name] === 'string' ? optDeps[name]
+ : peerDeps && typeof peerDeps[name] === 'string' ? peerDeps[name]
: null
}
diff --git a/deps/npm/node_modules/@npmcli/metavuln-calculator/package.json b/deps/npm/node_modules/@npmcli/metavuln-calculator/package.json
index f7a4f5cc47a7e6..4ad6193ae6aa8e 100644
--- a/deps/npm/node_modules/@npmcli/metavuln-calculator/package.json
+++ b/deps/npm/node_modules/@npmcli/metavuln-calculator/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/metavuln-calculator",
- "version": "1.1.0",
+ "version": "1.1.1",
"main": "lib/index.js",
"files": [
"lib"
diff --git a/deps/npm/node_modules/libnpmversion/README.md b/deps/npm/node_modules/libnpmversion/README.md
index daa0b88157c6c3..e82e7cd6f8730f 100644
--- a/deps/npm/node_modules/libnpmversion/README.md
+++ b/deps/npm/node_modules/libnpmversion/README.md
@@ -25,6 +25,7 @@ npmVersion(arg, {
signGitTag: false, // default false, gpg sign the git tag
force: false, // push forward recklessly if any problems happen
ignoreScripts: false, // do not run pre/post/version lifecycle scripts
+ scriptShell: '/bin/bash', // shell to run lifecycle scripts in
message: 'v%s', // message for tag and commit, replace %s with the version
}).then(newVersion => {
console.error('version updated!', newVersion)
@@ -149,6 +150,10 @@ Push forward recklessly if any problems happen. Default `false`.
Do not run pre/post/version lifecycle scripts. Default `false`.
+#### `scriptShell` String
+
+Path to the shell, which should execute the lifecycle scripts. Defaults to `/bin/sh` on unix, or `cmd.exe` on windows.
+
#### `message` String
The message for the git commit and annotated git tag that are created.
diff --git a/deps/npm/node_modules/libnpmversion/lib/index.js b/deps/npm/node_modules/libnpmversion/lib/index.js
index c3f554834bf81d..683941cdea4f35 100644
--- a/deps/npm/node_modules/libnpmversion/lib/index.js
+++ b/deps/npm/node_modules/libnpmversion/lib/index.js
@@ -13,6 +13,7 @@ module.exports = async (newversion, opts = {}) => {
signGitTag = false,
force = false,
ignoreScripts = false,
+ scriptShell = undefined,
preid = null,
log = proclog,
message = 'v%s',
@@ -31,6 +32,7 @@ module.exports = async (newversion, opts = {}) => {
signGitTag,
force,
ignoreScripts,
+ scriptShell,
preid,
pkg,
log,
diff --git a/deps/npm/node_modules/libnpmversion/package.json b/deps/npm/node_modules/libnpmversion/package.json
index 0135c21e7232cb..30d94c7a14699e 100644
--- a/deps/npm/node_modules/libnpmversion/package.json
+++ b/deps/npm/node_modules/libnpmversion/package.json
@@ -1,6 +1,6 @@
{
"name": "libnpmversion",
- "version": "1.0.12",
+ "version": "1.1.0",
"main": "lib/index.js",
"files": [
"lib/*.js"
diff --git a/deps/npm/node_modules/npm-packlist/index.js b/deps/npm/node_modules/npm-packlist/index.js
index cf87b18528b013..8f62983e6f6c0f 100644
--- a/deps/npm/node_modules/npm-packlist/index.js
+++ b/deps/npm/node_modules/npm-packlist/index.js
@@ -182,6 +182,13 @@ const npmWalker = Class => class Walker extends Class {
getPackageFiles (entries, pkg) {
try {
+ // XXX this could be changed to use read-package-json-fast
+ // which handles the normalizing of bins for us, and simplifies
+ // the test for bundleDependencies and bundledDependencies later.
+ // HOWEVER if we do this, we need to be sure that we're careful
+ // about what we write back out since rpj-fast removes some fields
+ // that the user likely wants to keep. it also would add a second
+ // file read that we would want to optimize away.
pkg = normalizePackageBin(JSON.parse(pkg.toString()))
} catch (er) {
// not actually a valid package.json
@@ -202,7 +209,7 @@ const npmWalker = Class => class Walker extends Class {
// the files list as the effective readdir result, that means it
// looks like we don't have a node_modules folder at all unless we
// include it here.
- if (pkg.bundleDependencies && entries.includes('node_modules'))
+ if ((pkg.bundleDependencies || pkg.bundledDependencies) && entries.includes('node_modules'))
pkg.files.push('node_modules')
const patterns = Array.from(new Set(pkg.files)).reduce((set, pattern) => {
diff --git a/deps/npm/node_modules/npm-packlist/package.json b/deps/npm/node_modules/npm-packlist/package.json
index 6f60521059a048..1276b484136992 100644
--- a/deps/npm/node_modules/npm-packlist/package.json
+++ b/deps/npm/node_modules/npm-packlist/package.json
@@ -1,6 +1,6 @@
{
"name": "npm-packlist",
- "version": "2.1.4",
+ "version": "2.1.5",
"description": "Get a list of the files to add from a folder into an npm package",
"directories": {
"test": "test"
@@ -20,7 +20,7 @@
"devDependencies": {
"mutate-fs": "^2.1.1",
"require-inject": "^1.4.4",
- "tap": "^14.10.7"
+ "tap": "^14.10.8"
},
"scripts": {
"test": "tap",
diff --git a/deps/npm/package.json b/deps/npm/package.json
index 1e821ececafc40..0f078d18be5730 100644
--- a/deps/npm/package.json
+++ b/deps/npm/package.json
@@ -1,5 +1,5 @@
{
- "version": "7.7.5",
+ "version": "7.7.6",
"name": "npm",
"description": "a package manager for JavaScript",
"keywords": [
@@ -74,7 +74,7 @@
"libnpmpublish": "^4.0.0",
"libnpmsearch": "^3.1.0",
"libnpmteam": "^2.0.2",
- "libnpmversion": "^1.0.12",
+ "libnpmversion": "^1.1.0",
"make-fetch-happen": "^8.0.14",
"minipass": "^3.1.3",
"minipass-pipeline": "^1.2.4",
@@ -180,12 +180,12 @@
"devDependencies": {
"@mdx-js/mdx": "^1.6.22",
"cmark-gfm": "^0.8.5",
- "eslint": "^7.22.0",
+ "eslint": "^7.23.0",
"eslint-plugin-import": "^2.22.1",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.3.1",
"eslint-plugin-standard": "^5.0.0",
- "jsdom": "^16.5.1",
+ "jsdom": "^16.5.2",
"licensee": "^8.1.0",
"marked-man": "^0.7.0",
"require-inject": "^1.4.4",
diff --git a/deps/npm/tap-snapshots/smoke-tests-index.js-TAP.test.js b/deps/npm/tap-snapshots/smoke-tests-index.js-TAP.test.js
index 4d840ceef6ada1..5c3fb8231114db 100644
--- a/deps/npm/tap-snapshots/smoke-tests-index.js-TAP.test.js
+++ b/deps/npm/tap-snapshots/smoke-tests-index.js-TAP.test.js
@@ -5,6 +5,43 @@
* Make sure to inspect the output below. Do not ignore changes!
*/
'use strict'
+exports[`smoke-tests/index.js TAP npm (no args) > should have expected no args output 1`] = `
+npm
+
+Usage:
+
+npm install install all the dependencies in your project
+npm install add the dependency to your project
+npm test run this project's tests
+npm run run the script named
+npm -h quick help on
+npm -l display usage info for all commands
+npm help search for help on
+npm help npm more involved overview
+
+All commands:
+
+ access, adduser, audit, bin, bugs, cache, ci, completion,
+ config, dedupe, deprecate, diff, dist-tag, docs, doctor,
+ edit, exec, explain, explore, find-dupes, fund, get, help,
+ hook, init, install, install-ci-test, install-test, link,
+ ll, login, logout, ls, org, outdated, owner, pack, ping,
+ prefix, profile, prune, publish, rebuild, repo, restart,
+ root, run-script, search, set, set-script, shrinkwrap, star,
+ stars, start, stop, team, test, token, uninstall, unpublish,
+ unstar, update, version, view, whoami
+
+Specify configs in the ini-formatted file:
+ {CWD}/smoke-tests/index/.npmrc
+or on the command line via: npm --key=value
+
+More configuration info: npm help config
+Configuration fields: npm help 7 config
+
+npm {CWD}
+
+`
+
exports[`smoke-tests/index.js TAP npm diff > should have expected diff output 1`] = `
diff --git a/package.json b/package.json
index v1.0.4..v1.1.1 100644
diff --git a/deps/npm/tap-snapshots/test-lib-utils-config-describe-all.js-TAP.test.js b/deps/npm/tap-snapshots/test-lib-utils-config-describe-all.js-TAP.test.js
index a85f90ac84181a..2a3d0146b187dd 100644
--- a/deps/npm/tap-snapshots/test-lib-utils-config-describe-all.js-TAP.test.js
+++ b/deps/npm/tap-snapshots/test-lib-utils-config-describe-all.js-TAP.test.js
@@ -674,7 +674,7 @@ Show extended information in \`npm ls\` and \`npm search\`.
#### \`maxsockets\`
-* Default: Infinity
+* Default: 15
* Type: Number
The maximum number of connections to use per origin (protocol/host/port
diff --git a/deps/npm/test/lib/cli.js b/deps/npm/test/lib/cli.js
index 40da77bf44e3d8..28e44394e16dcf 100644
--- a/deps/npm/test/lib/cli.js
+++ b/deps/npm/test/lib/cli.js
@@ -172,17 +172,37 @@ t.test('gracefully handles error printing usage', t => {
t.teardown(() => {
npmock.output = output
errorHandlerCb = null
+ errorHandlerCalled = null
})
const proc = {
- argv: ['node', 'npm', 'asdf'],
+ argv: ['node', 'npm'],
on: () => {},
}
npmock.argv = []
- npmock.output = (msg) => {
- throw new Error('test exception')
+ errorHandlerCb = () => {
+ t.match(errorHandlerCalled, [], 'should call errorHandler with no args')
+ t.end()
+ }
+ cli(proc)
+})
+
+t.test('handles output error', t => {
+ const { output } = npmock
+ t.teardown(() => {
+ npmock.output = output
+ errorHandlerCb = null
+ errorHandlerCalled = null
+ })
+ const proc = {
+ argv: ['node', 'npm'],
+ on: () => {},
+ }
+ npmock.argv = []
+ npmock.output = () => {
+ throw new Error('ERR')
}
errorHandlerCb = () => {
- t.match(errorHandlerCalled, /test exception/)
+ t.match(errorHandlerCalled, /ERR/, 'should call errorHandler with error')
t.end()
}
cli(proc)
@@ -191,6 +211,7 @@ t.test('gracefully handles error printing usage', t => {
t.test('load error calls error handler', t => {
t.teardown(() => {
errorHandlerCb = null
+ errorHandlerCalled = null
LOAD_ERROR = null
})