summaryrefslogtreecommitdiff
path: root/deps/node/deps/npm/node_modules/npm-lifecycle
diff options
context:
space:
mode:
Diffstat (limited to 'deps/node/deps/npm/node_modules/npm-lifecycle')
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/CHANGELOG.md108
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/LICENSE235
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/README.md50
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/index.js460
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/lib/spawn.js65
-rwxr-xr-xdeps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp6
-rwxr-xr-xdeps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp.cmd5
-rw-r--r--deps/node/deps/npm/node_modules/npm-lifecycle/package.json84
8 files changed, 0 insertions, 1013 deletions
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/CHANGELOG.md b/deps/node/deps/npm/node_modules/npm-lifecycle/CHANGELOG.md
deleted file mode 100644
index 7e7bc92e..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/CHANGELOG.md
+++ /dev/null
@@ -1,108 +0,0 @@
-# Change Log
-
-All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
-
-<a name="2.1.0"></a>
-# [2.1.0](https://github.com/npm/lifecycle/compare/v2.0.3...v2.1.0) (2018-08-13)
-
-
-### Bug Fixes
-
-* **windows:** revert writing all possible cases of PATH variables ([#22](https://github.com/npm/lifecycle/issues/22)) ([8fcaa21](https://github.com/npm/lifecycle/commit/8fcaa21)), closes [#20](https://github.com/npm/lifecycle/issues/20)
-
-
-### Features
-
-* **ci:** add node@10 to CI ([e206aa0](https://github.com/npm/lifecycle/commit/e206aa0))
-
-
-
-<a name="2.0.3"></a>
-## [2.0.3](https://github.com/npm/lifecycle/compare/v2.0.2...v2.0.3) (2018-05-16)
-
-
-
-<a name="2.0.2"></a>
-## [2.0.2](https://github.com/npm/lifecycle/compare/v2.0.1...v2.0.2) (2018-05-16)
-
-
-### Bug Fixes
-
-* **hooks:** run .hooks scripts even if package.json script is not present ([#13](https://github.com/npm/lifecycle/issues/13)) ([67adc2d](https://github.com/npm/lifecycle/commit/67adc2d))
-* **windows:** Write to all possible cases of PATH variables ([#17](https://github.com/npm/lifecycle/issues/17)) ([e4ecc54](https://github.com/npm/lifecycle/commit/e4ecc54))
-
-
-
-<a name="2.0.1"></a>
-## [2.0.1](https://github.com/npm/lifecycle/compare/v2.0.0...v2.0.1) (2018-03-08)
-
-
-### Bug Fixes
-
-* **log:** Fix formatting of invalid wd warning ([#12](https://github.com/npm/lifecycle/issues/12)) ([ced38f3](https://github.com/npm/lifecycle/commit/ced38f3))
-
-
-
-<a name="2.0.0"></a>
-# [2.0.0](https://github.com/npm/lifecycle/compare/v1.0.3...v2.0.0) (2017-11-17)
-
-
-### Features
-
-* **node-gyp:** use own node-gyp ([ae94ed2](https://github.com/npm/lifecycle/commit/ae94ed2))
-* **nodeOptions:** add "nodeOptions" option to set NODE_OPTIONS for child ([#7](https://github.com/npm/lifecycle/issues/7)) ([2eb7a38](https://github.com/npm/lifecycle/commit/2eb7a38))
-* **stdio:** add child process io options and default logging of piped stdout/err ([#3](https://github.com/npm/lifecycle/issues/3)) ([7b8281a](https://github.com/npm/lifecycle/commit/7b8281a))
-
-
-### BREAKING CHANGES
-
-* **node-gyp:** Previously you had to bring your own node-gyp AND you had
-to provide access the way npm does, by having a `bin` dir with a
-`node-gyp-bin` in it.
-
-Fixes: #4
-
-
-
-<a name="1.0.3"></a>
-## [1.0.3](https://github.com/npm/lifecycle/compare/v1.0.2...v1.0.3) (2017-09-01)
-
-
-### Bug Fixes
-
-* **runCmd:** add missing option to runCmd recursive queue call ([1a69ce8](https://github.com/npm/lifecycle/commit/1a69ce8))
-
-
-
-<a name="1.0.2"></a>
-## [1.0.2](https://github.com/npm/lifecycle/compare/v1.0.1...v1.0.2) (2017-08-17)
-
-
-
-<a name="1.0.1"></a>
-## [1.0.1](https://github.com/npm/lifecycle/compare/v1.0.0...v1.0.1) (2017-08-16)
-
-
-### Bug Fixes
-
-* **license:** fix up license documentation ([a784ca0](https://github.com/npm/lifecycle/commit/a784ca0))
-
-
-
-<a name="1.0.0"></a>
-# 1.0.0 (2017-08-16)
-
-
-### Bug Fixes
-
-* **misc:** use strict to fix node[@4](https://github.com/4) ([#2](https://github.com/npm/lifecycle/issues/2)) ([961ceb9](https://github.com/npm/lifecycle/commit/961ceb9))
-
-
-### Features
-
-* **api:** Extract from npm proper ([#1](https://github.com/npm/lifecycle/issues/1)) ([27d9930](https://github.com/npm/lifecycle/commit/27d9930))
-
-
-### BREAKING CHANGES
-
-* **api:** this is the initial implementation
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/LICENSE b/deps/node/deps/npm/node_modules/npm-lifecycle/LICENSE
deleted file mode 100644
index 0b6c2287..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/LICENSE
+++ /dev/null
@@ -1,235 +0,0 @@
-The npm application
-Copyright (c) npm, Inc. and Contributors
-Licensed on the terms of The Artistic License 2.0
-
-Node package dependencies of the npm application
-Copyright (c) their respective copyright owners
-Licensed on their respective license terms
-
-The npm public registry at https://registry.npmjs.org
-and the npm website at https://www.npmjs.com
-Operated by npm, Inc.
-Use governed by terms published on https://www.npmjs.com
-
-"Node.js"
-Trademark Joyent, Inc., https://joyent.com
-Neither npm nor npm, Inc. are affiliated with Joyent, Inc.
-
-The Node.js application
-Project of Node Foundation, https://nodejs.org
-
-The npm Logo
-Copyright (c) Mathias Pettersson and Brian Hammond
-
-"Gubblebum Blocky" typeface
-Copyright (c) Tjarda Koster, https://jelloween.deviantart.com
-Used with permission
-
-
---------
-
-
-The Artistic License 2.0
-
-Copyright (c) 2000-2006, The Perl Foundation.
-
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-
-Preamble
-
-This license establishes the terms under which a given free software
-Package may be copied, modified, distributed, and/or redistributed.
-The intent is that the Copyright Holder maintains some artistic
-control over the development of that Package while still keeping the
-Package available as open source and free software.
-
-You are always permitted to make arrangements wholly outside of this
-license directly with the Copyright Holder of a given Package. If the
-terms of this license do not permit the full use that you propose to
-make of the Package, you should contact the Copyright Holder and seek
-a different licensing arrangement.
-
-Definitions
-
- "Copyright Holder" means the individual(s) or organization(s)
- named in the copyright notice for the entire Package.
-
- "Contributor" means any party that has contributed code or other
- material to the Package, in accordance with the Copyright Holder's
- procedures.
-
- "You" and "your" means any person who would like to copy,
- distribute, or modify the Package.
-
- "Package" means the collection of files distributed by the
- Copyright Holder, and derivatives of that collection and/or of
- those files. A given Package may consist of either the Standard
- Version, or a Modified Version.
-
- "Distribute" means providing a copy of the Package or making it
- accessible to anyone else, or in the case of a company or
- organization, to others outside of your company or organization.
-
- "Distributor Fee" means any fee that you charge for Distributing
- this Package or providing support for this Package to another
- party. It does not mean licensing fees.
-
- "Standard Version" refers to the Package if it has not been
- modified, or has been modified only in ways explicitly requested
- by the Copyright Holder.
-
- "Modified Version" means the Package, if it has been changed, and
- such changes were not explicitly requested by the Copyright
- Holder.
-
- "Original License" means this Artistic License as Distributed with
- the Standard Version of the Package, in its current version or as
- it may be modified by The Perl Foundation in the future.
-
- "Source" form means the source code, documentation source, and
- configuration files for the Package.
-
- "Compiled" form means the compiled bytecode, object code, binary,
- or any other form resulting from mechanical transformation or
- translation of the Source form.
-
-
-Permission for Use and Modification Without Distribution
-
-(1) You are permitted to use the Standard Version and create and use
-Modified Versions for any purpose without restriction, provided that
-you do not Distribute the Modified Version.
-
-
-Permissions for Redistribution of the Standard Version
-
-(2) You may Distribute verbatim copies of the Source form of the
-Standard Version of this Package in any medium without restriction,
-either gratis or for a Distributor Fee, provided that you duplicate
-all of the original copyright notices and associated disclaimers. At
-your discretion, such verbatim copies may or may not include a
-Compiled form of the Package.
-
-(3) You may apply any bug fixes, portability changes, and other
-modifications made available from the Copyright Holder. The resulting
-Package will still be considered the Standard Version, and as such
-will be subject to the Original License.
-
-
-Distribution of Modified Versions of the Package as Source
-
-(4) You may Distribute your Modified Version as Source (either gratis
-or for a Distributor Fee, and with or without a Compiled form of the
-Modified Version) provided that you clearly document how it differs
-from the Standard Version, including, but not limited to, documenting
-any non-standard features, executables, or modules, and provided that
-you do at least ONE of the following:
-
- (a) make the Modified Version available to the Copyright Holder
- of the Standard Version, under the Original License, so that the
- Copyright Holder may include your modifications in the Standard
- Version.
-
- (b) ensure that installation of your Modified Version does not
- prevent the user installing or running the Standard Version. In
- addition, the Modified Version must bear a name that is different
- from the name of the Standard Version.
-
- (c) allow anyone who receives a copy of the Modified Version to
- make the Source form of the Modified Version available to others
- under
-
- (i) the Original License or
-
- (ii) a license that permits the licensee to freely copy,
- modify and redistribute the Modified Version using the same
- licensing terms that apply to the copy that the licensee
- received, and requires that the Source form of the Modified
- Version, and of any works derived from it, be made freely
- available in that license fees are prohibited but Distributor
- Fees are allowed.
-
-
-Distribution of Compiled Forms of the Standard Version
-or Modified Versions without the Source
-
-(5) You may Distribute Compiled forms of the Standard Version without
-the Source, provided that you include complete instructions on how to
-get the Source of the Standard Version. Such instructions must be
-valid at the time of your distribution. If these instructions, at any
-time while you are carrying out such distribution, become invalid, you
-must provide new instructions on demand or cease further distribution.
-If you provide valid instructions or cease distribution within thirty
-days after you become aware that the instructions are invalid, then
-you do not forfeit any of your rights under this license.
-
-(6) You may Distribute a Modified Version in Compiled form without
-the Source, provided that you comply with Section 4 with respect to
-the Source of the Modified Version.
-
-
-Aggregating or Linking the Package
-
-(7) You may aggregate the Package (either the Standard Version or
-Modified Version) with other packages and Distribute the resulting
-aggregation provided that you do not charge a licensing fee for the
-Package. Distributor Fees are permitted, and licensing fees for other
-components in the aggregation are permitted. The terms of this license
-apply to the use and Distribution of the Standard or Modified Versions
-as included in the aggregation.
-
-(8) You are permitted to link Modified and Standard Versions with
-other works, to embed the Package in a larger work of your own, or to
-build stand-alone binary or bytecode versions of applications that
-include the Package, and Distribute the result without restriction,
-provided the result does not expose a direct interface to the Package.
-
-
-Items That are Not Considered Part of a Modified Version
-
-(9) Works (including, but not limited to, modules and scripts) that
-merely extend or make use of the Package, do not, by themselves, cause
-the Package to be a Modified Version. In addition, such works are not
-considered parts of the Package itself, and are not subject to the
-terms of this license.
-
-
-General Provisions
-
-(10) Any use, modification, and distribution of the Standard or
-Modified Versions is governed by this Artistic License. By using,
-modifying or distributing the Package, you accept this license. Do not
-use, modify, or distribute the Package, if you do not accept this
-license.
-
-(11) If your Modified Version has been derived from a Modified
-Version made by someone other than you, you are nevertheless required
-to ensure that your Modified Version complies with the requirements of
-this license.
-
-(12) This license does not grant you the right to use any trademark,
-service mark, tradename, or logo of the Copyright Holder.
-
-(13) This license includes the non-exclusive, worldwide,
-free-of-charge patent license to make, have made, use, offer to sell,
-sell, import and otherwise transfer the Package with respect to any
-patent claims licensable by the Copyright Holder that are necessarily
-infringed by the Package. If you institute patent litigation
-(including a cross-claim or counterclaim) against any party alleging
-that the Package constitutes direct or contributory patent
-infringement, then this Artistic License to you shall terminate on the
-date that such litigation is filed.
-
-(14) Disclaimer of Warranty:
-THE PACKAGE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS "AS
-IS' AND WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. THE IMPLIED
-WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR
-NON-INFRINGEMENT ARE DISCLAIMED TO THE EXTENT PERMITTED BY YOUR LOCAL
-LAW. UNLESS REQUIRED BY LAW, NO COPYRIGHT HOLDER OR CONTRIBUTOR WILL
-BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
-DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THE PACKAGE, EVEN IF
-ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
---------
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/README.md b/deps/node/deps/npm/node_modules/npm-lifecycle/README.md
deleted file mode 100644
index c81d3d7a..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/README.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# npm-lifecycle [![npm version](https://img.shields.io/npm/v/npm-lifecycle.svg)](https://npm.im/npm-lifecycle) [![license](https://img.shields.io/npm/l/npm-lifecycle.svg)](https://npm.im/npm-lifecycle) [![Travis](https://img.shields.io/travis/npm/npm-lifecycle/latest.svg)](https://travis-ci.org/npm/npm-lifecycle) [![AppVeyor](https://img.shields.io/appveyor/ci/npm/npm-lifecycle/latest.svg)](https://ci.appveyor.com/project/npm/npm-lifecycle) [![Coverage Status](https://coveralls.io/repos/github/npm/npm-lifecycle/badge.svg?branch=latest)](https://coveralls.io/github/npm/npm-lifecycle?branch=latest)
-
-[`npm-lifecycle`](https://github.com/npm/npm-lifecycle) is a standalone library for
-executing packages' lifecycle scripts. It is extracted from npm itself and
-intended to be fully compatible with the way npm executes individual scripts.
-
-## Install
-
-`$ npm install npm-lifecycle`
-
-## Table of Contents
-
-* [Example](#example)
-* [Features](#features)
-* [Contributing](#contributing)
-* [API](#api)
- * [`lifecycle`](#lifecycle)
-
-### Example
-
-```javascript
-// idk yet
-```
-
-### Features
-
-* something cool
-
-### Contributing
-
-The npm team enthusiastically welcomes contributions and project participation!
-There's a bunch of things you can do if you want to contribute! The [Contributor
-Guide](CONTRIBUTING.md) has all the information you need for everything from
-reporting bugs to contributing entire new features. Please don't hesitate to
-jump in if you'd like to, or even ask us questions if something isn't clear.
-
-### API
-
-#### <a name="lifecycle"></a> `> lifecycle(name, pkg, wd, [opts]) -> Promise`
-
-##### Arguments
-
-* `opts.stdio` - the [stdio](https://nodejs.org/api/child_process.html#child_process_options_stdio)
-passed to the child process. `[0, 1, 2]` by default.
-
-##### Example
-
-```javascript
-lifecycle()
-```
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/index.js b/deps/node/deps/npm/node_modules/npm-lifecycle/index.js
deleted file mode 100644
index 4eb83255..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/index.js
+++ /dev/null
@@ -1,460 +0,0 @@
-'use strict'
-
-exports = module.exports = lifecycle
-exports.makeEnv = makeEnv
-exports._incorrectWorkingDirectory = _incorrectWorkingDirectory
-
-const spawn = require('./lib/spawn')
-const path = require('path')
-const Stream = require('stream').Stream
-const fs = require('graceful-fs')
-const chain = require('slide').chain
-const uidNumber = require('uid-number')
-const umask = require('umask')
-const which = require('which')
-const byline = require('byline')
-const resolveFrom = require('resolve-from')
-
-const DEFAULT_NODE_GYP_PATH = resolveFrom(__dirname, 'node-gyp/bin/node-gyp')
-const hookStatCache = new Map()
-
-let PATH = 'PATH'
-
-// windows calls it's path 'Path' usually, but this is not guaranteed.
-if (process.platform === 'win32') {
- PATH = 'Path'
- Object.keys(process.env).forEach(function (e) {
- if (e.match(/^PATH$/i)) {
- PATH = e
- }
- })
-}
-
-function logid (pkg, stage) {
- return pkg._id + '~' + stage + ':'
-}
-
-function hookStat (dir, stage, cb) {
- const hook = path.join(dir, '.hooks', stage)
- const cachedStatError = hookStatCache.get(hook)
-
- if (cachedStatError === undefined) {
- return fs.stat(hook, function (statError) {
- hookStatCache.set(hook, statError)
- cb(statError)
- })
- }
-
- return setImmediate(() => cb(cachedStatError))
-}
-
-function lifecycle (pkg, stage, wd, opts) {
- return new Promise((resolve, reject) => {
- while (pkg && pkg._data) pkg = pkg._data
- if (!pkg) return reject(new Error('Invalid package data'))
-
- opts.log.info('lifecycle', logid(pkg, stage), pkg._id)
- if (!pkg.scripts) pkg.scripts = {}
-
- if (stage === 'prepublish' && opts.ignorePrepublish) {
- opts.log.info('lifecycle', logid(pkg, stage), 'ignored because ignore-prepublish is set to true', pkg._id)
- delete pkg.scripts.prepublish
- }
-
- hookStat(opts.dir, stage, function (statError) {
- // makeEnv is a slow operation. This guard clause prevents makeEnv being called
- // and avoids a ton of unnecessary work, and results in a major perf boost.
- if (!pkg.scripts[stage] && statError) return resolve()
-
- validWd(wd || path.resolve(opts.dir, pkg.name), function (er, wd) {
- if (er) return reject(er)
-
- if ((wd.indexOf(opts.dir) !== 0 || _incorrectWorkingDirectory(wd, pkg)) &&
- !opts.unsafePerm && pkg.scripts[stage]) {
- opts.log.warn('lifecycle', logid(pkg, stage), 'cannot run in wd', pkg._id, pkg.scripts[stage], `(wd=${wd})`)
- return resolve()
- }
-
- // set the env variables, then run scripts as a child process.
- var env = makeEnv(pkg, opts)
- env.npm_lifecycle_event = stage
- env.npm_node_execpath = env.NODE = env.NODE || process.execPath
- env.npm_execpath = require.main.filename
- env.INIT_CWD = process.cwd()
- env.npm_config_node_gyp = env.npm_config_node_gyp || DEFAULT_NODE_GYP_PATH
-
- // 'nobody' typically doesn't have permission to write to /tmp
- // even if it's never used, sh freaks out.
- if (!opts.unsafePerm) env.TMPDIR = wd
-
- lifecycle_(pkg, stage, wd, opts, env, (er) => {
- if (er) return reject(er)
- return resolve()
- })
- })
- })
- })
-}
-
-function _incorrectWorkingDirectory (wd, pkg) {
- return wd.lastIndexOf(pkg.name) !== wd.length - pkg.name.length
-}
-
-function lifecycle_ (pkg, stage, wd, opts, env, cb) {
- var pathArr = []
- var p = wd.split(/[\\/]node_modules[\\/]/)
- var acc = path.resolve(p.shift())
-
- p.forEach(function (pp) {
- pathArr.unshift(path.join(acc, 'node_modules', '.bin'))
- acc = path.join(acc, 'node_modules', pp)
- })
- pathArr.unshift(path.join(acc, 'node_modules', '.bin'))
-
- // we also unshift the bundled node-gyp-bin folder so that
- // the bundled one will be used for installing things.
- pathArr.unshift(path.join(__dirname, 'node-gyp-bin'))
-
- if (shouldPrependCurrentNodeDirToPATH(opts)) {
- // prefer current node interpreter in child scripts
- pathArr.push(path.dirname(process.execPath))
- }
-
- if (env[PATH]) pathArr.push(env[PATH])
- env[PATH] = pathArr.join(process.platform === 'win32' ? ';' : ':')
-
- var packageLifecycle = pkg.scripts && pkg.scripts.hasOwnProperty(stage)
-
- if (opts.ignoreScripts) {
- opts.log.info('lifecycle', logid(pkg, stage), 'ignored because ignore-scripts is set to true', pkg._id)
- packageLifecycle = false
- } else if (packageLifecycle) {
- // define this here so it's available to all scripts.
- env.npm_lifecycle_script = pkg.scripts[stage]
- } else {
- opts.log.silly('lifecycle', logid(pkg, stage), 'no script for ' + stage + ', continuing')
- }
-
- function done (er) {
- if (er) {
- if (opts.force) {
- opts.log.info('lifecycle', logid(pkg, stage), 'forced, continuing', er)
- er = null
- } else if (opts.failOk) {
- opts.log.warn('lifecycle', logid(pkg, stage), 'continuing anyway', er.message)
- er = null
- }
- }
- cb(er)
- }
-
- chain(
- [
- packageLifecycle && [runPackageLifecycle, pkg, stage, env, wd, opts],
- [runHookLifecycle, pkg, stage, env, wd, opts]
- ],
- done
- )
-}
-
-function shouldPrependCurrentNodeDirToPATH (opts) {
- const cfgsetting = opts.scriptsPrependNodePath
- if (cfgsetting === false) return false
- if (cfgsetting === true) return true
-
- var isDifferentNodeInPath
-
- var isWindows = process.platform === 'win32'
- var foundExecPath
- try {
- foundExecPath = which.sync(path.basename(process.execPath), {pathExt: isWindows ? ';' : ':'})
- // Apply `fs.realpath()` here to avoid false positives when `node` is a symlinked executable.
- isDifferentNodeInPath = fs.realpathSync(process.execPath).toUpperCase() !==
- fs.realpathSync(foundExecPath).toUpperCase()
- } catch (e) {
- isDifferentNodeInPath = true
- }
-
- if (cfgsetting === 'warn-only') {
- if (isDifferentNodeInPath && !shouldPrependCurrentNodeDirToPATH.hasWarned) {
- if (foundExecPath) {
- opts.log.warn('lifecycle', 'The node binary used for scripts is', foundExecPath, 'but npm is using', process.execPath, 'itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.')
- } else {
- opts.log.warn('lifecycle', 'npm is using', process.execPath, 'but there is no node binary in the current PATH. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.')
- }
- shouldPrependCurrentNodeDirToPATH.hasWarned = true
- }
-
- return false
- }
-
- return isDifferentNodeInPath
-}
-
-function validWd (d, cb) {
- fs.stat(d, function (er, st) {
- if (er || !st.isDirectory()) {
- var p = path.dirname(d)
- if (p === d) {
- return cb(new Error('Could not find suitable wd'))
- }
- return validWd(p, cb)
- }
- return cb(null, d)
- })
-}
-
-function runPackageLifecycle (pkg, stage, env, wd, opts, cb) {
- // run package lifecycle scripts in the package root, or the nearest parent.
- var cmd = env.npm_lifecycle_script
-
- var note = '\n> ' + pkg._id + ' ' + stage + ' ' + wd +
- '\n> ' + cmd + '\n'
- runCmd(note, cmd, pkg, env, stage, wd, opts, cb)
-}
-
-var running = false
-var queue = []
-function dequeue () {
- running = false
- if (queue.length) {
- var r = queue.shift()
- runCmd.apply(null, r)
- }
-}
-
-function runCmd (note, cmd, pkg, env, stage, wd, opts, cb) {
- if (running) {
- queue.push([note, cmd, pkg, env, stage, wd, opts, cb])
- return
- }
-
- running = true
- opts.log.pause()
- var unsafe = opts.unsafePerm
- var user = unsafe ? null : opts.user
- var group = unsafe ? null : opts.group
-
- if (opts.log.level !== 'silent') {
- opts.log.clearProgress()
- console.log(note)
- opts.log.showProgress()
- }
- opts.log.verbose('lifecycle', logid(pkg, stage), 'unsafe-perm in lifecycle', unsafe)
-
- if (process.platform === 'win32') {
- unsafe = true
- }
-
- if (unsafe) {
- runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, 0, 0, cb)
- } else {
- uidNumber(user, group, function (er, uid, gid) {
- runCmd_(cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb)
- })
- }
-}
-
-function runCmd_ (cmd, pkg, env, wd, opts, stage, unsafe, uid, gid, cb_) {
- function cb (er) {
- cb_.apply(null, arguments)
- opts.log.resume()
- process.nextTick(dequeue)
- }
-
- var conf = {
- cwd: wd,
- env: env,
- stdio: opts.stdio || [ 0, 1, 2 ]
- }
-
- if (!unsafe) {
- conf.uid = uid ^ 0
- conf.gid = gid ^ 0
- }
-
- var sh = 'sh'
- var shFlag = '-c'
-
- var customShell = opts.scriptShell
-
- if (customShell) {
- sh = customShell
- } else if (process.platform === 'win32') {
- sh = process.env.comspec || 'cmd'
- shFlag = '/d /s /c'
- conf.windowsVerbatimArguments = true
- }
-
- opts.log.verbose('lifecycle', logid(pkg, stage), 'PATH:', env[PATH])
- opts.log.verbose('lifecycle', logid(pkg, stage), 'CWD:', wd)
- opts.log.silly('lifecycle', logid(pkg, stage), 'Args:', [shFlag, cmd])
-
- var proc = spawn(sh, [shFlag, cmd], conf, opts.log)
-
- proc.on('error', procError)
- proc.on('close', function (code, signal) {
- opts.log.silly('lifecycle', logid(pkg, stage), 'Returned: code:', code, ' signal:', signal)
- if (signal) {
- process.kill(process.pid, signal)
- } else if (code) {
- var er = new Error('Exit status ' + code)
- er.errno = code
- }
- procError(er)
- })
- byline(proc.stdout).on('data', function (data) {
- opts.log.verbose('lifecycle', logid(pkg, stage), 'stdout', data.toString())
- })
- byline(proc.stderr).on('data', function (data) {
- opts.log.verbose('lifecycle', logid(pkg, stage), 'stderr', data.toString())
- })
- process.once('SIGTERM', procKill)
- process.once('SIGINT', procInterupt)
-
- function procError (er) {
- if (er) {
- opts.log.info('lifecycle', logid(pkg, stage), 'Failed to exec ' + stage + ' script')
- er.message = pkg._id + ' ' + stage + ': `' + cmd + '`\n' +
- er.message
- if (er.code !== 'EPERM') {
- er.code = 'ELIFECYCLE'
- }
- fs.stat(opts.dir, function (statError, d) {
- if (statError && statError.code === 'ENOENT' && opts.dir.split(path.sep).slice(-1)[0] === 'node_modules') {
- opts.log.warn('', 'Local package.json exists, but node_modules missing, did you mean to install?')
- }
- })
- er.pkgid = pkg._id
- er.stage = stage
- er.script = cmd
- er.pkgname = pkg.name
- }
- process.removeListener('SIGTERM', procKill)
- process.removeListener('SIGTERM', procInterupt)
- process.removeListener('SIGINT', procKill)
- return cb(er)
- }
- function procKill () {
- proc.kill()
- }
- function procInterupt () {
- proc.kill('SIGINT')
- proc.on('exit', function () {
- process.exit()
- })
- process.once('SIGINT', procKill)
- }
-}
-
-function runHookLifecycle (pkg, stage, env, wd, opts, cb) {
- hookStat(opts.dir, stage, function (er) {
- if (er) return cb()
- var cmd = path.join(opts.dir, '.hooks', stage)
- var note = '\n> ' + pkg._id + ' ' + stage + ' ' + wd +
- '\n> ' + cmd
- runCmd(note, cmd, pkg, env, stage, wd, opts, cb)
- })
-}
-
-function makeEnv (data, opts, prefix, env) {
- prefix = prefix || 'npm_package_'
- if (!env) {
- env = {}
- for (var i in process.env) {
- if (!i.match(/^npm_/)) {
- env[i] = process.env[i]
- }
- }
-
- // express and others respect the NODE_ENV value.
- if (opts.production) env.NODE_ENV = 'production'
- } else if (!data.hasOwnProperty('_lifecycleEnv')) {
- Object.defineProperty(data, '_lifecycleEnv',
- {
- value: env,
- enumerable: false
- }
- )
- }
-
- if (opts.nodeOptions) env.NODE_OPTIONS = opts.nodeOptions
-
- for (i in data) {
- if (i.charAt(0) !== '_') {
- var envKey = (prefix + i).replace(/[^a-zA-Z0-9_]/g, '_')
- if (i === 'readme') {
- continue
- }
- if (data[i] && typeof data[i] === 'object') {
- try {
- // quick and dirty detection for cyclical structures
- JSON.stringify(data[i])
- makeEnv(data[i], opts, envKey + '_', env)
- } catch (ex) {
- // usually these are package objects.
- // just get the path and basic details.
- var d = data[i]
- makeEnv(
- { name: d.name, version: d.version, path: d.path },
- opts,
- envKey + '_',
- env
- )
- }
- } else {
- env[envKey] = String(data[i])
- env[envKey] = env[envKey].indexOf('\n') !== -1
- ? JSON.stringify(env[envKey])
- : env[envKey]
- }
- }
- }
-
- if (prefix !== 'npm_package_') return env
-
- prefix = 'npm_config_'
- var pkgConfig = {}
- var pkgVerConfig = {}
- var namePref = data.name + ':'
- var verPref = data.name + '@' + data.version + ':'
-
- Object.keys(opts.config).forEach(function (i) {
- // in some rare cases (e.g. working with nerf darts), there are segmented
- // "private" (underscore-prefixed) config names -- don't export
- if ((i.charAt(0) === '_' && i.indexOf('_' + namePref) !== 0) || i.match(/:_/)) {
- return
- }
- var value = opts.config[i]
- if (value instanceof Stream || Array.isArray(value)) return
- if (i.match(/umask/)) value = umask.toString(value)
- if (!value) value = ''
- else if (typeof value === 'number') value = '' + value
- else if (typeof value !== 'string') value = JSON.stringify(value)
-
- value = value.indexOf('\n') !== -1
- ? JSON.stringify(value)
- : value
- i = i.replace(/^_+/, '')
- var k
- if (i.indexOf(namePref) === 0) {
- k = i.substr(namePref.length).replace(/[^a-zA-Z0-9_]/g, '_')
- pkgConfig[k] = value
- } else if (i.indexOf(verPref) === 0) {
- k = i.substr(verPref.length).replace(/[^a-zA-Z0-9_]/g, '_')
- pkgVerConfig[k] = value
- }
- var envKey = (prefix + i).replace(/[^a-zA-Z0-9_]/g, '_')
- env[envKey] = value
- })
-
- prefix = 'npm_package_config_'
- ;[pkgConfig, pkgVerConfig].forEach(function (conf) {
- for (var i in conf) {
- var envKey = (prefix + i)
- env[envKey] = conf[i]
- }
- })
-
- return env
-}
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/lib/spawn.js b/deps/node/deps/npm/node_modules/npm-lifecycle/lib/spawn.js
deleted file mode 100644
index 30e5b818..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/lib/spawn.js
+++ /dev/null
@@ -1,65 +0,0 @@
-'use strict'
-
-module.exports = spawn
-
-const _spawn = require('child_process').spawn
-const EventEmitter = require('events').EventEmitter
-
-let progressEnabled
-let running = 0
-
-function startRunning (log) {
- if (progressEnabled == null) progressEnabled = log.progressEnabled
- if (progressEnabled) log.disableProgress()
- ++running
-}
-
-function stopRunning (log) {
- --running
- if (progressEnabled && running === 0) log.enableProgress()
-}
-
-function willCmdOutput (stdio) {
- if (stdio === 'inherit') return true
- if (!Array.isArray(stdio)) return false
- for (let fh = 1; fh <= 2; ++fh) {
- if (stdio[fh] === 'inherit') return true
- if (stdio[fh] === 1 || stdio[fh] === 2) return true
- }
- return false
-}
-
-function spawn (cmd, args, options, log) {
- const cmdWillOutput = willCmdOutput(options && options.stdio)
-
- if (cmdWillOutput) startRunning(log)
- const raw = _spawn(cmd, args, options)
- const cooked = new EventEmitter()
-
- raw.on('error', function (er) {
- if (cmdWillOutput) stopRunning(log)
- er.file = cmd
- cooked.emit('error', er)
- }).on('close', function (code, signal) {
- if (cmdWillOutput) stopRunning(log)
- // Create ENOENT error because Node.js v8.0 will not emit
- // an `error` event if the command could not be found.
- if (code === 127) {
- const er = new Error('spawn ENOENT')
- er.code = 'ENOENT'
- er.errno = 'ENOENT'
- er.syscall = 'spawn'
- er.file = cmd
- cooked.emit('error', er)
- } else {
- cooked.emit('close', code, signal)
- }
- })
-
- cooked.stdin = raw.stdin
- cooked.stdout = raw.stdout
- cooked.stderr = raw.stderr
- cooked.kill = function (sig) { return raw.kill(sig) }
-
- return cooked
-}
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp b/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp
deleted file mode 100755
index 70efb6f3..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env sh
-if [ "x$npm_config_node_gyp" = "x" ]; then
- node "`dirname "$0"`/../../node_modules/node-gyp/bin/node-gyp.js" "$@"
-else
- "$npm_config_node_gyp" "$@"
-fi
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp.cmd b/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp.cmd
deleted file mode 100755
index 083c9c58..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp.cmd
+++ /dev/null
@@ -1,5 +0,0 @@
-if not defined npm_config_node_gyp (
- node "%~dp0\..\..\node_modules\node-gyp\bin\node-gyp.js" %*
-) else (
- node "%npm_config_node_gyp%" %*
-)
diff --git a/deps/node/deps/npm/node_modules/npm-lifecycle/package.json b/deps/node/deps/npm/node_modules/npm-lifecycle/package.json
deleted file mode 100644
index 6f63b06f..00000000
--- a/deps/node/deps/npm/node_modules/npm-lifecycle/package.json
+++ /dev/null
@@ -1,84 +0,0 @@
-{
- "_from": "npm-lifecycle@2.1.0",
- "_id": "npm-lifecycle@2.1.0",
- "_inBundle": false,
- "_integrity": "sha512-QbBfLlGBKsktwBZLj6AviHC6Q9Y3R/AY4a2PYSIRhSKSS0/CxRyD/PfxEX6tPeOCXQgMSNdwGeECacstgptc+g==",
- "_location": "/npm-lifecycle",
- "_phantomChildren": {},
- "_requested": {
- "type": "version",
- "registry": true,
- "raw": "npm-lifecycle@2.1.0",
- "name": "npm-lifecycle",
- "escapedName": "npm-lifecycle",
- "rawSpec": "2.1.0",
- "saveSpec": null,
- "fetchSpec": "2.1.0"
- },
- "_requiredBy": [
- "#USER",
- "/",
- "/libcipm"
- ],
- "_resolved": "https://registry.npmjs.org/npm-lifecycle/-/npm-lifecycle-2.1.0.tgz",
- "_shasum": "1eda2eedb82db929e3a0c50341ab0aad140ed569",
- "_spec": "npm-lifecycle@2.1.0",
- "_where": "/Users/zkat/Documents/code/work/npm",
- "author": {
- "name": "Mike Sherov"
- },
- "bugs": {
- "url": "https://github.com/npm/lifecycle/issues"
- },
- "bundleDependencies": false,
- "dependencies": {
- "byline": "^5.0.0",
- "graceful-fs": "^4.1.11",
- "node-gyp": "^3.8.0",
- "resolve-from": "^4.0.0",
- "slide": "^1.1.6",
- "uid-number": "0.0.6",
- "umask": "^1.1.0",
- "which": "^1.3.1"
- },
- "deprecated": false,
- "description": "JavaScript package lifecycle hook runner",
- "devDependencies": {
- "nyc": "^12.0.2",
- "sinon": "^6.1.5",
- "standard": "^11.0.1",
- "standard-version": "^4.4.0",
- "tap": "^12.0.1",
- "weallbehave": "^1.2.0",
- "weallcontribute": "^1.0.8"
- },
- "files": [
- "index.js",
- "lib/spawn.js",
- "node-gyp-bin"
- ],
- "homepage": "https://github.com/npm/lifecycle#readme",
- "keywords": [
- "npm",
- "lifecycle",
- "hook",
- "runner"
- ],
- "license": "Artistic-2.0",
- "main": "index.js",
- "name": "npm-lifecycle",
- "repository": {
- "type": "git",
- "url": "git://github.com/npm/lifecycle.git"
- },
- "scripts": {
- "postrelease": "npm publish && git push --follow-tags",
- "prerelease": "npm t",
- "pretest": "standard",
- "release": "standard-version -s",
- "test": "tap -J --coverage test/*.js",
- "update-coc": "weallbehave -o . && git add CODE_OF_CONDUCT.md && git commit -m 'docs(coc): updated CODE_OF_CONDUCT.md'",
- "update-contrib": "weallcontribute -o . && git add CONTRIBUTING.md && git commit -m 'docs(contributing): updated CONTRIBUTING.md'"
- },
- "version": "2.1.0"
-}