Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornlf <quitlahok@gmail.com>2022-06-21 22:54:59 +0300
committerNathan Fritz <fritzy@github.com>2022-06-22 23:46:13 +0300
commit2c06ceee82dd813c0ae84cc0b09e6941cfc5533e (patch)
treef78021d7c4e10d3de4de781915d0a6cb614e84a7
parent2e50cb83e84cf25fee93ba0ca5a0343fbdb33c41 (diff)
deps: @npmcli/run-script@4.1.0
-rw-r--r--node_modules/@npmcli/run-script/lib/escape.js (renamed from node_modules/pacote/node_modules/@npmcli/run-script/lib/escape.js)0
-rw-r--r--node_modules/@npmcli/run-script/lib/make-spawn-args.js32
-rw-r--r--node_modules/@npmcli/run-script/lib/run-script-pkg.js13
-rw-r--r--node_modules/@npmcli/run-script/package.json6
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/LICENSE15
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/is-server-package.js12
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/is-windows.js2
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/make-spawn-args.js68
-rwxr-xr-xnode_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp2
-rwxr-xr-xnode_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp.cmd1
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/package-envs.js26
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script-pkg.js97
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script.js14
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/set-path.js45
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/signal-manager.js47
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/lib/validate-options.js39
-rw-r--r--node_modules/pacote/node_modules/@npmcli/run-script/package.json53
-rw-r--r--package-lock.json66
-rw-r--r--package.json2
-rw-r--r--workspaces/arborist/package.json2
-rw-r--r--workspaces/libnpmexec/package.json2
-rw-r--r--workspaces/libnpmpack/package.json2
-rw-r--r--workspaces/libnpmversion/package.json2
23 files changed, 65 insertions, 483 deletions
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/escape.js b/node_modules/@npmcli/run-script/lib/escape.js
index 29d24a8bc..29d24a8bc 100644
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/escape.js
+++ b/node_modules/@npmcli/run-script/lib/escape.js
diff --git a/node_modules/@npmcli/run-script/lib/make-spawn-args.js b/node_modules/@npmcli/run-script/lib/make-spawn-args.js
index 9cfc84b0e..6f3aa4c00 100644
--- a/node_modules/@npmcli/run-script/lib/make-spawn-args.js
+++ b/node_modules/@npmcli/run-script/lib/make-spawn-args.js
@@ -1,8 +1,12 @@
/* eslint camelcase: "off" */
const isWindows = require('./is-windows.js')
const setPATH = require('./set-path.js')
+const { chmodSync: chmod, unlinkSync: unlink, writeFileSync: writeFile } = require('fs')
+const { tmpdir } = require('os')
const { resolve } = require('path')
+const which = require('which')
const npm_config_node_gyp = require.resolve('node-gyp/bin/node-gyp.js')
+const escape = require('./escape.js')
const makeSpawnArgs = options => {
const {
@@ -12,11 +16,28 @@ const makeSpawnArgs = options => {
env = {},
stdio,
cmd,
+ args = [],
stdioString = false,
} = options
+ let scriptFile
+ let script = ''
const isCmd = /(?:^|\\)cmd(?:\.exe)?$/i.test(scriptShell)
- const args = isCmd ? ['/d', '/s', '/c', cmd] : ['-c', cmd]
+ if (isCmd) {
+ scriptFile = resolve(tmpdir(), `${event}-${Date.now()}.cmd`)
+ script += '@echo off\n'
+ script += `${cmd} ${args.map((arg) => escape.cmd(arg)).join(' ')}`
+ } else {
+ const shellPath = which.sync(scriptShell)
+ scriptFile = resolve(tmpdir(), `${event}-${Date.now()}.sh`)
+ script += `#!${shellPath}\n`
+ script += `${cmd} ${args.map((arg) => escape.sh(arg)).join(' ')}`
+ }
+ writeFile(scriptFile, script)
+ if (!isCmd) {
+ chmod(scriptFile, '0775')
+ }
+ const spawnArgs = isCmd ? ['/d', '/s', '/c', scriptFile] : ['-c', scriptFile]
const spawnOpts = {
env: setPATH(path, {
@@ -34,7 +55,14 @@ const makeSpawnArgs = options => {
...(isCmd ? { windowsVerbatimArguments: true } : {}),
}
- return [scriptShell, args, spawnOpts]
+ const cleanup = () => {
+ // delete the script, this is just a best effort
+ try {
+ unlink(scriptFile)
+ } catch (err) {}
+ }
+
+ return [scriptShell, spawnArgs, spawnOpts, cleanup]
}
module.exports = makeSpawnArgs
diff --git a/node_modules/@npmcli/run-script/lib/run-script-pkg.js b/node_modules/@npmcli/run-script/lib/run-script-pkg.js
index a6fa4d2b3..84c5e2bfe 100644
--- a/node_modules/@npmcli/run-script/lib/run-script-pkg.js
+++ b/node_modules/@npmcli/run-script/lib/run-script-pkg.js
@@ -31,7 +31,7 @@ const runScriptPkg = async options => {
if (options.cmd) {
cmd = options.cmd
} else if (pkg.scripts && pkg.scripts[event]) {
- cmd = pkg.scripts[event] + args.map(a => ` ${JSON.stringify(a)}`).join('')
+ cmd = pkg.scripts[event]
} else if (
// If there is no preinstall or install script, default to rebuilding node-gyp packages.
event === 'install' &&
@@ -42,7 +42,7 @@ const runScriptPkg = async options => {
) {
cmd = defaultGypInstallScript
} else if (event === 'start' && await isServerPackage(path)) {
- cmd = 'node server.js' + args.map(a => ` ${JSON.stringify(a)}`).join('')
+ cmd = 'node server.js'
}
if (!cmd) {
@@ -54,15 +54,18 @@ const runScriptPkg = async options => {
console.log(bruce(pkg._id, event, cmd))
}
- const p = promiseSpawn(...makeSpawnArgs({
+ const [spawnShell, spawnArgs, spawnOpts, cleanup] = makeSpawnArgs({
event,
path,
scriptShell,
env: packageEnvs(env, pkg),
stdio,
cmd,
+ args,
stdioString,
- }), {
+ })
+
+ const p = promiseSpawn(spawnShell, spawnArgs, spawnOpts, {
event,
script: cmd,
pkgid: pkg._id,
@@ -88,7 +91,7 @@ const runScriptPkg = async options => {
} else {
throw er
}
- })
+ }).finally(cleanup)
}
module.exports = runScriptPkg
diff --git a/node_modules/@npmcli/run-script/package.json b/node_modules/@npmcli/run-script/package.json
index 733b27e44..38c4862e1 100644
--- a/node_modules/@npmcli/run-script/package.json
+++ b/node_modules/@npmcli/run-script/package.json
@@ -1,6 +1,6 @@
{
"name": "@npmcli/run-script",
- "version": "3.0.2",
+ "version": "4.1.0",
"description": "Run a lifecycle script for a package (descendant of npm-lifecycle)",
"author": "GitHub Inc.",
"license": "ISC",
@@ -23,7 +23,7 @@
},
"devDependencies": {
"@npmcli/eslint-config": "^3.0.1",
- "@npmcli/template-oss": "3.2.2",
+ "@npmcli/template-oss": "3.5.0",
"minipass": "^3.1.6",
"require-inject": "^1.4.4",
"tap": "^16.0.1"
@@ -48,6 +48,6 @@
},
"templateOSS": {
"//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "3.2.2"
+ "version": "3.5.0"
}
}
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/LICENSE b/node_modules/pacote/node_modules/@npmcli/run-script/LICENSE
deleted file mode 100644
index 19cec97b1..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/LICENSE
+++ /dev/null
@@ -1,15 +0,0 @@
-The ISC License
-
-Copyright (c) npm, Inc.
-
-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/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-server-package.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-server-package.js
deleted file mode 100644
index d16862324..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-server-package.js
+++ /dev/null
@@ -1,12 +0,0 @@
-const util = require('util')
-const fs = require('fs')
-const { stat } = fs.promises || { stat: util.promisify(fs.stat) }
-const { resolve } = require('path')
-module.exports = async path => {
- try {
- const st = await stat(resolve(path, 'server.js'))
- return st.isFile()
- } catch (er) {
- return false
- }
-}
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-windows.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-windows.js
deleted file mode 100644
index 651917e6a..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/is-windows.js
+++ /dev/null
@@ -1,2 +0,0 @@
-const platform = process.env.__FAKE_TESTING_PLATFORM__ || process.platform
-module.exports = platform === 'win32'
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/make-spawn-args.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/make-spawn-args.js
deleted file mode 100644
index 6f3aa4c00..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/make-spawn-args.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/* eslint camelcase: "off" */
-const isWindows = require('./is-windows.js')
-const setPATH = require('./set-path.js')
-const { chmodSync: chmod, unlinkSync: unlink, writeFileSync: writeFile } = require('fs')
-const { tmpdir } = require('os')
-const { resolve } = require('path')
-const which = require('which')
-const npm_config_node_gyp = require.resolve('node-gyp/bin/node-gyp.js')
-const escape = require('./escape.js')
-
-const makeSpawnArgs = options => {
- const {
- event,
- path,
- scriptShell = isWindows ? process.env.ComSpec || 'cmd' : 'sh',
- env = {},
- stdio,
- cmd,
- args = [],
- stdioString = false,
- } = options
-
- let scriptFile
- let script = ''
- const isCmd = /(?:^|\\)cmd(?:\.exe)?$/i.test(scriptShell)
- if (isCmd) {
- scriptFile = resolve(tmpdir(), `${event}-${Date.now()}.cmd`)
- script += '@echo off\n'
- script += `${cmd} ${args.map((arg) => escape.cmd(arg)).join(' ')}`
- } else {
- const shellPath = which.sync(scriptShell)
- scriptFile = resolve(tmpdir(), `${event}-${Date.now()}.sh`)
- script += `#!${shellPath}\n`
- script += `${cmd} ${args.map((arg) => escape.sh(arg)).join(' ')}`
- }
- writeFile(scriptFile, script)
- if (!isCmd) {
- chmod(scriptFile, '0775')
- }
- const spawnArgs = isCmd ? ['/d', '/s', '/c', scriptFile] : ['-c', scriptFile]
-
- const spawnOpts = {
- env: setPATH(path, {
- // we need to at least save the PATH environment var
- ...process.env,
- ...env,
- npm_package_json: resolve(path, 'package.json'),
- npm_lifecycle_event: event,
- npm_lifecycle_script: cmd,
- npm_config_node_gyp,
- }),
- stdioString,
- stdio,
- cwd: path,
- ...(isCmd ? { windowsVerbatimArguments: true } : {}),
- }
-
- const cleanup = () => {
- // delete the script, this is just a best effort
- try {
- unlink(scriptFile)
- } catch (err) {}
- }
-
- return [scriptShell, spawnArgs, spawnOpts, cleanup]
-}
-
-module.exports = makeSpawnArgs
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp b/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
deleted file mode 100755
index 5bec64d96..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/usr/bin/env sh
-node "$npm_config_node_gyp" "$@"
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp.cmd b/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp.cmd
deleted file mode 100755
index 4c6987ac9..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp.cmd
+++ /dev/null
@@ -1 +0,0 @@
-@node "%npm_config_node_gyp%" %*
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/package-envs.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/package-envs.js
deleted file mode 100644
index 6b538e502..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/package-envs.js
+++ /dev/null
@@ -1,26 +0,0 @@
-// https://github.com/npm/rfcs/pull/183
-
-const envVal = val => Array.isArray(val) ? val.map(v => envVal(v)).join('\n\n')
- : val === null || val === false ? ''
- : String(val)
-
-const packageEnvs = (env, vals, prefix) => {
- for (const [key, val] of Object.entries(vals)) {
- if (val === undefined) {
- continue
- } else if (val && !Array.isArray(val) && typeof val === 'object') {
- packageEnvs(env, val, `${prefix}${key}_`)
- } else {
- env[`${prefix}${key}`] = envVal(val)
- }
- }
- return env
-}
-
-module.exports = (env, pkg) => packageEnvs({ ...env }, {
- name: pkg.name,
- version: pkg.version,
- config: pkg.config,
- engines: pkg.engines,
- bin: pkg.bin,
-}, 'npm_package_')
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script-pkg.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script-pkg.js
deleted file mode 100644
index 84c5e2bfe..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script-pkg.js
+++ /dev/null
@@ -1,97 +0,0 @@
-const makeSpawnArgs = require('./make-spawn-args.js')
-const promiseSpawn = require('@npmcli/promise-spawn')
-const packageEnvs = require('./package-envs.js')
-const { isNodeGypPackage, defaultGypInstallScript } = require('@npmcli/node-gyp')
-const signalManager = require('./signal-manager.js')
-const isServerPackage = require('./is-server-package.js')
-
-// you wouldn't like me when I'm angry...
-const bruce = (id, event, cmd) =>
- `\n> ${id ? id + ' ' : ''}${event}\n> ${cmd.trim().replace(/\n/g, '\n> ')}\n`
-
-const runScriptPkg = async options => {
- const {
- event,
- path,
- scriptShell,
- env = {},
- stdio = 'pipe',
- pkg,
- args = [],
- stdioString = false,
- // note: only used when stdio:inherit
- banner = true,
- // how long to wait for a process.kill signal
- // only exposed here so that we can make the test go a bit faster.
- signalTimeout = 500,
- } = options
-
- const { scripts = {}, gypfile } = pkg
- let cmd = null
- if (options.cmd) {
- cmd = options.cmd
- } else if (pkg.scripts && pkg.scripts[event]) {
- cmd = pkg.scripts[event]
- } else if (
- // If there is no preinstall or install script, default to rebuilding node-gyp packages.
- event === 'install' &&
- !scripts.install &&
- !scripts.preinstall &&
- gypfile !== false &&
- await isNodeGypPackage(path)
- ) {
- cmd = defaultGypInstallScript
- } else if (event === 'start' && await isServerPackage(path)) {
- cmd = 'node server.js'
- }
-
- if (!cmd) {
- return { code: 0, signal: null }
- }
-
- if (stdio === 'inherit' && banner !== false) {
- // we're dumping to the parent's stdout, so print the banner
- console.log(bruce(pkg._id, event, cmd))
- }
-
- const [spawnShell, spawnArgs, spawnOpts, cleanup] = makeSpawnArgs({
- event,
- path,
- scriptShell,
- env: packageEnvs(env, pkg),
- stdio,
- cmd,
- args,
- stdioString,
- })
-
- const p = promiseSpawn(spawnShell, spawnArgs, spawnOpts, {
- event,
- script: cmd,
- pkgid: pkg._id,
- path,
- })
-
- if (stdio === 'inherit') {
- signalManager.add(p.process)
- }
-
- if (p.stdin) {
- p.stdin.end()
- }
-
- return p.catch(er => {
- const { signal } = er
- if (stdio === 'inherit' && signal) {
- process.kill(process.pid, signal)
- // just in case we don't die, reject after 500ms
- // this also keeps the node process open long enough to actually
- // get the signal, rather than terminating gracefully.
- return new Promise((res, rej) => setTimeout(() => rej(er), signalTimeout))
- } else {
- throw er
- }
- }).finally(cleanup)
-}
-
-module.exports = runScriptPkg
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script.js
deleted file mode 100644
index e9d18261a..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/run-script.js
+++ /dev/null
@@ -1,14 +0,0 @@
-const rpj = require('read-package-json-fast')
-const runScriptPkg = require('./run-script-pkg.js')
-const validateOptions = require('./validate-options.js')
-const isServerPackage = require('./is-server-package.js')
-
-const runScript = options => {
- validateOptions(options)
- const { pkg, path } = options
- return pkg ? runScriptPkg(options)
- : rpj(path + '/package.json')
- .then(readPackage => runScriptPkg({ ...options, pkg: readPackage }))
-}
-
-module.exports = Object.assign(runScript, { isServerPackage })
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/set-path.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/set-path.js
deleted file mode 100644
index 07671f445..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/set-path.js
+++ /dev/null
@@ -1,45 +0,0 @@
-const { resolve, dirname } = require('path')
-const isWindows = require('./is-windows.js')
-// the path here is relative, even though it does not need to be
-// in order to make the posix tests pass in windows
-const nodeGypPath = resolve(__dirname, '../lib/node-gyp-bin')
-
-// Windows typically calls its PATH environ 'Path', but this is not
-// guaranteed, nor is it guaranteed to be the only one. Merge them
-// all together in the order they appear in the object.
-const setPATH = (projectPath, env) => {
- // not require('path').delimiter, because we fake this for testing
- const delimiter = isWindows ? ';' : ':'
- const PATH = Object.keys(env).filter(p => /^path$/i.test(p) && env[p])
- .map(p => env[p].split(delimiter))
- .reduce((set, p) => set.concat(p.filter(concatted => !set.includes(concatted))), [])
- .join(delimiter)
-
- const pathArr = []
- // unshift the ./node_modules/.bin from every folder
- // walk up until dirname() does nothing, at the root
- // XXX should we specify a cwd that we don't go above?
- let p = projectPath
- let pp
- do {
- pathArr.push(resolve(p, 'node_modules', '.bin'))
- pp = p
- p = dirname(p)
- } while (p !== pp)
- pathArr.push(nodeGypPath, PATH)
-
- const pathVal = pathArr.join(delimiter)
-
- // XXX include the node-gyp-bin path somehow? Probably better for
- // npm or arborist or whoever to just provide that by putting it in
- // the PATH environ, since that's preserved anyway.
- for (const key of Object.keys(env)) {
- if (/^path$/i.test(key)) {
- env[key] = pathVal
- }
- }
-
- return env
-}
-
-module.exports = setPATH
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/signal-manager.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/signal-manager.js
deleted file mode 100644
index 7e10f859e..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/signal-manager.js
+++ /dev/null
@@ -1,47 +0,0 @@
-const runningProcs = new Set()
-let handlersInstalled = false
-
-const forwardedSignals = [
- 'SIGINT',
- 'SIGTERM',
-]
-
-const handleSignal = signal => {
- for (const proc of runningProcs) {
- proc.kill(signal)
- }
-}
-
-const setupListeners = () => {
- for (const signal of forwardedSignals) {
- process.on(signal, handleSignal)
- }
- handlersInstalled = true
-}
-
-const cleanupListeners = () => {
- if (runningProcs.size === 0) {
- for (const signal of forwardedSignals) {
- process.removeListener(signal, handleSignal)
- }
- handlersInstalled = false
- }
-}
-
-const add = proc => {
- runningProcs.add(proc)
- if (!handlersInstalled) {
- setupListeners()
- }
-
- proc.once('exit', () => {
- runningProcs.delete(proc)
- cleanupListeners()
- })
-}
-
-module.exports = {
- add,
- handleSignal,
- forwardedSignals,
-}
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/lib/validate-options.js b/node_modules/pacote/node_modules/@npmcli/run-script/lib/validate-options.js
deleted file mode 100644
index 8d855916e..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/lib/validate-options.js
+++ /dev/null
@@ -1,39 +0,0 @@
-const validateOptions = options => {
- if (typeof options !== 'object' || !options) {
- throw new TypeError('invalid options object provided to runScript')
- }
-
- const {
- event,
- path,
- scriptShell,
- env = {},
- stdio = 'pipe',
- args = [],
- cmd,
- } = options
-
- if (!event || typeof event !== 'string') {
- throw new TypeError('valid event not provided to runScript')
- }
- if (!path || typeof path !== 'string') {
- throw new TypeError('valid path not provided to runScript')
- }
- if (scriptShell !== undefined && typeof scriptShell !== 'string') {
- throw new TypeError('invalid scriptShell option provided to runScript')
- }
- if (typeof env !== 'object' || !env) {
- throw new TypeError('invalid env option provided to runScript')
- }
- if (typeof stdio !== 'string' && !Array.isArray(stdio)) {
- throw new TypeError('invalid stdio option provided to runScript')
- }
- if (!Array.isArray(args) || args.some(a => typeof a !== 'string')) {
- throw new TypeError('invalid args option provided to runScript')
- }
- if (cmd !== undefined && typeof cmd !== 'string') {
- throw new TypeError('invalid cmd option provided to runScript')
- }
-}
-
-module.exports = validateOptions
diff --git a/node_modules/pacote/node_modules/@npmcli/run-script/package.json b/node_modules/pacote/node_modules/@npmcli/run-script/package.json
deleted file mode 100644
index 38c4862e1..000000000
--- a/node_modules/pacote/node_modules/@npmcli/run-script/package.json
+++ /dev/null
@@ -1,53 +0,0 @@
-{
- "name": "@npmcli/run-script",
- "version": "4.1.0",
- "description": "Run a lifecycle script for a package (descendant of npm-lifecycle)",
- "author": "GitHub Inc.",
- "license": "ISC",
- "scripts": {
- "test": "tap",
- "preversion": "npm test",
- "postversion": "npm publish",
- "prepublishOnly": "git push origin --follow-tags",
- "eslint": "eslint",
- "lint": "eslint \"**/*.js\"",
- "lintfix": "npm run lint -- --fix",
- "postlint": "template-oss-check",
- "snap": "tap",
- "posttest": "npm run lint",
- "template-oss-apply": "template-oss-apply --force"
- },
- "tap": {
- "check-coverage": true,
- "coverage-map": "map.js"
- },
- "devDependencies": {
- "@npmcli/eslint-config": "^3.0.1",
- "@npmcli/template-oss": "3.5.0",
- "minipass": "^3.1.6",
- "require-inject": "^1.4.4",
- "tap": "^16.0.1"
- },
- "dependencies": {
- "@npmcli/node-gyp": "^2.0.0",
- "@npmcli/promise-spawn": "^3.0.0",
- "node-gyp": "^9.0.0",
- "read-package-json-fast": "^2.0.3"
- },
- "files": [
- "bin/",
- "lib/"
- ],
- "main": "lib/run-script.js",
- "repository": {
- "type": "git",
- "url": "https://github.com/npm/run-script.git"
- },
- "engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
- },
- "templateOSS": {
- "//@npmcli/template-oss": "This file is partially managed by @npmcli/template-oss. Edits may be overwritten.",
- "version": "3.5.0"
- }
-}
diff --git a/package-lock.json b/package-lock.json
index d51f27230..e6302e343 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -93,7 +93,7 @@
"@npmcli/fs": "^2.1.0",
"@npmcli/map-workspaces": "^2.0.3",
"@npmcli/package-json": "^2.0.0",
- "@npmcli/run-script": "^3.0.1",
+ "@npmcli/run-script": "^4.1.0",
"abbrev": "~1.1.1",
"archy": "~1.0.0",
"cacache": "^16.1.1",
@@ -1042,9 +1042,9 @@
}
},
"node_modules/@npmcli/run-script": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-3.0.2.tgz",
- "integrity": "sha512-vdjD/PMBl+OX9j9C9irx5sCCIKfp2PWkpPNH9zxvlJAfSZ3Qp5aU412v+O3PFJl3R1PFNwuyChCqHg4ma6ci2Q==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.0.tgz",
+ "integrity": "sha512-bVX9/2YhQscdlC5WEDQ8HH7bw32klCiAvOSvUHJcmeUTUuaQ7z42KiwmnkXWqhVKKhbWPBp+5H0kN6WDyfknzw==",
"inBundle": true,
"dependencies": {
"@npmcli/node-gyp": "^2.0.0",
@@ -5587,21 +5587,6 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/pacote/node_modules/@npmcli/run-script": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.0.tgz",
- "integrity": "sha512-bVX9/2YhQscdlC5WEDQ8HH7bw32klCiAvOSvUHJcmeUTUuaQ7z42KiwmnkXWqhVKKhbWPBp+5H0kN6WDyfknzw==",
- "inBundle": true,
- "dependencies": {
- "@npmcli/node-gyp": "^2.0.0",
- "@npmcli/promise-spawn": "^3.0.0",
- "node-gyp": "^9.0.0",
- "read-package-json-fast": "^2.0.3"
- },
- "engines": {
- "node": "^12.13.0 || ^14.15.0 || >=16.0.0"
- }
- },
"node_modules/parent-module": {
"version": "1.0.1",
"dev": true,
@@ -10019,7 +10004,7 @@
"@npmcli/name-from-folder": "^1.0.1",
"@npmcli/node-gyp": "^2.0.0",
"@npmcli/package-json": "^2.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"bin-links": "^3.0.0",
"cacache": "^16.0.6",
"common-ancestor-path": "^1.0.1",
@@ -10110,7 +10095,7 @@
"dependencies": {
"@npmcli/arborist": "^5.0.0",
"@npmcli/ci-detect": "^2.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"chalk": "^4.1.0",
"mkdirp-infer-owner": "^2.0.0",
"npm-package-arg": "^9.0.1",
@@ -10185,7 +10170,7 @@
"version": "4.1.0",
"license": "ISC",
"dependencies": {
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"npm-package-arg": "^9.0.1",
"pacote": "^13.6.1"
},
@@ -10259,7 +10244,7 @@
"license": "ISC",
"dependencies": {
"@npmcli/git": "^3.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"json-parse-even-better-errors": "^2.3.1",
"proc-log": "^2.0.0",
"semver": "^7.3.7"
@@ -10740,7 +10725,7 @@
"@npmcli/name-from-folder": "^1.0.1",
"@npmcli/node-gyp": "^2.0.0",
"@npmcli/package-json": "^2.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"@npmcli/template-oss": "3.5.0",
"benchmark": "^2.1.4",
"bin-links": "^3.0.0",
@@ -10759,7 +10744,7 @@
"npm-pick-manifest": "^7.0.0",
"npm-registry-fetch": "^13.0.0",
"npmlog": "^6.0.2",
- "pacote": "^13.0.5",
+ "pacote": "^13.6.1",
"parse-conflict-json": "^2.0.1",
"proc-log": "^2.0.0",
"promise-all-reject-late": "^1.0.0",
@@ -10898,9 +10883,9 @@
}
},
"@npmcli/run-script": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-3.0.2.tgz",
- "integrity": "sha512-vdjD/PMBl+OX9j9C9irx5sCCIKfp2PWkpPNH9zxvlJAfSZ3Qp5aU412v+O3PFJl3R1PFNwuyChCqHg4ma6ci2Q==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.0.tgz",
+ "integrity": "sha512-bVX9/2YhQscdlC5WEDQ8HH7bw32klCiAvOSvUHJcmeUTUuaQ7z42KiwmnkXWqhVKKhbWPBp+5H0kN6WDyfknzw==",
"requires": {
"@npmcli/node-gyp": "^2.0.0",
"@npmcli/promise-spawn": "^3.0.0",
@@ -13071,7 +13056,7 @@
"diff": "^5.0.0",
"minimatch": "^5.0.1",
"npm-package-arg": "^9.0.1",
- "pacote": "^13.0.5",
+ "pacote": "^13.6.1",
"tap": "^16.0.1",
"tar": "^6.1.0"
}
@@ -13082,14 +13067,14 @@
"@npmcli/arborist": "^5.0.0",
"@npmcli/ci-detect": "^2.0.0",
"@npmcli/eslint-config": "^3.0.1",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"@npmcli/template-oss": "3.5.0",
"bin-links": "^3.0.0",
"chalk": "^4.1.0",
"mkdirp-infer-owner": "^2.0.0",
"npm-package-arg": "^9.0.1",
"npmlog": "^6.0.2",
- "pacote": "^13.0.5",
+ "pacote": "^13.6.1",
"proc-log": "^2.0.0",
"read": "^1.0.7",
"read-package-json-fast": "^2.0.2",
@@ -13133,11 +13118,11 @@
"version": "file:workspaces/libnpmpack",
"requires": {
"@npmcli/eslint-config": "^3.0.1",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"@npmcli/template-oss": "3.5.0",
"nock": "^13.0.7",
"npm-package-arg": "^9.0.1",
- "pacote": "^13.5.0",
+ "pacote": "^13.6.1",
"tap": "^16.0.1"
}
},
@@ -13183,7 +13168,7 @@
"requires": {
"@npmcli/eslint-config": "^3.0.1",
"@npmcli/git": "^3.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"@npmcli/template-oss": "3.5.0",
"json-parse-even-better-errors": "^2.3.1",
"proc-log": "^2.0.0",
@@ -13941,19 +13926,6 @@
"rimraf": "^3.0.2",
"ssri": "^9.0.0",
"tar": "^6.1.11"
- },
- "dependencies": {
- "@npmcli/run-script": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.0.tgz",
- "integrity": "sha512-bVX9/2YhQscdlC5WEDQ8HH7bw32klCiAvOSvUHJcmeUTUuaQ7z42KiwmnkXWqhVKKhbWPBp+5H0kN6WDyfknzw==",
- "requires": {
- "@npmcli/node-gyp": "^2.0.0",
- "@npmcli/promise-spawn": "^3.0.0",
- "node-gyp": "^9.0.0",
- "read-package-json-fast": "^2.0.3"
- }
- }
}
},
"parent-module": {
diff --git a/package.json b/package.json
index b0feb2297..0bb399185 100644
--- a/package.json
+++ b/package.json
@@ -62,7 +62,7 @@
"@npmcli/fs": "^2.1.0",
"@npmcli/map-workspaces": "^2.0.3",
"@npmcli/package-json": "^2.0.0",
- "@npmcli/run-script": "^3.0.1",
+ "@npmcli/run-script": "^4.1.0",
"abbrev": "~1.1.1",
"archy": "~1.0.0",
"cacache": "^16.1.1",
diff --git a/workspaces/arborist/package.json b/workspaces/arborist/package.json
index 18b44ca3a..1ea87e577 100644
--- a/workspaces/arborist/package.json
+++ b/workspaces/arborist/package.json
@@ -11,7 +11,7 @@
"@npmcli/name-from-folder": "^1.0.1",
"@npmcli/node-gyp": "^2.0.0",
"@npmcli/package-json": "^2.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"bin-links": "^3.0.0",
"cacache": "^16.0.6",
"common-ancestor-path": "^1.0.1",
diff --git a/workspaces/libnpmexec/package.json b/workspaces/libnpmexec/package.json
index 2d98e529e..ec20ea1bd 100644
--- a/workspaces/libnpmexec/package.json
+++ b/workspaces/libnpmexec/package.json
@@ -57,7 +57,7 @@
"dependencies": {
"@npmcli/arborist": "^5.0.0",
"@npmcli/ci-detect": "^2.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"chalk": "^4.1.0",
"mkdirp-infer-owner": "^2.0.0",
"npm-package-arg": "^9.0.1",
diff --git a/workspaces/libnpmpack/package.json b/workspaces/libnpmpack/package.json
index 628aef5d1..16d4ee159 100644
--- a/workspaces/libnpmpack/package.json
+++ b/workspaces/libnpmpack/package.json
@@ -38,7 +38,7 @@
"bugs": "https://github.com/npm/libnpmpack/issues",
"homepage": "https://npmjs.com/package/libnpmpack",
"dependencies": {
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"npm-package-arg": "^9.0.1",
"pacote": "^13.6.1"
},
diff --git a/workspaces/libnpmversion/package.json b/workspaces/libnpmversion/package.json
index 86f973781..c103e71b0 100644
--- a/workspaces/libnpmversion/package.json
+++ b/workspaces/libnpmversion/package.json
@@ -37,7 +37,7 @@
},
"dependencies": {
"@npmcli/git": "^3.0.0",
- "@npmcli/run-script": "^3.0.0",
+ "@npmcli/run-script": "^4.1.0",
"json-parse-even-better-errors": "^2.3.1",
"proc-log": "^2.0.0",
"semver": "^7.3.7"