Template Upload
This commit is contained in:
12
node_modules/cross-spawn/.editorconfig
generated
vendored
Normal file
12
node_modules/cross-spawn/.editorconfig
generated
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
62
node_modules/cross-spawn/.jshintrc
generated
vendored
Normal file
62
node_modules/cross-spawn/.jshintrc
generated
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"predef": [
|
||||
"console",
|
||||
"describe",
|
||||
"it",
|
||||
"after",
|
||||
"afterEach",
|
||||
"before",
|
||||
"beforeEach"
|
||||
],
|
||||
|
||||
"indent": 4,
|
||||
"node": true,
|
||||
"devel": true,
|
||||
|
||||
"bitwise": false,
|
||||
"curly": false,
|
||||
"eqeqeq": true,
|
||||
"forin": false,
|
||||
"immed": true,
|
||||
"latedef": false,
|
||||
"newcap": true,
|
||||
"noarg": true,
|
||||
"noempty": false,
|
||||
"nonew": true,
|
||||
"plusplus": false,
|
||||
"regexp": false,
|
||||
"undef": true,
|
||||
"unused": "vars",
|
||||
"quotmark": "single",
|
||||
"strict": false,
|
||||
"trailing": true,
|
||||
"camelcase": true,
|
||||
|
||||
"asi": false,
|
||||
"boss": true,
|
||||
"debug": false,
|
||||
"eqnull": true,
|
||||
"es5": false,
|
||||
"esnext": false,
|
||||
"evil": false,
|
||||
"expr": false,
|
||||
"funcscope": false,
|
||||
"globalstrict": false,
|
||||
"iterator": false,
|
||||
"lastsemic": false,
|
||||
"laxbreak": true,
|
||||
"laxcomma": false,
|
||||
"loopfunc": true,
|
||||
"multistr": false,
|
||||
"onecase": true,
|
||||
"regexdash": false,
|
||||
"scripturl": false,
|
||||
"smarttabs": false,
|
||||
"shadow": false,
|
||||
"sub": false,
|
||||
"supernew": true,
|
||||
"validthis": false,
|
||||
|
||||
"nomen": false,
|
||||
"white": true
|
||||
}
|
3
node_modules/cross-spawn/.npmignore
generated
vendored
Normal file
3
node_modules/cross-spawn/.npmignore
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
node_modules/
|
||||
npm-debug.*
|
||||
test/
|
4
node_modules/cross-spawn/.travis.yml
generated
vendored
Normal file
4
node_modules/cross-spawn/.travis.yml
generated
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
language: node_js
|
||||
node_js:
|
||||
- '0.10'
|
||||
- '0.12'
|
19
node_modules/cross-spawn/LICENSE
generated
vendored
Normal file
19
node_modules/cross-spawn/LICENSE
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
Copyright (c) 2014 IndigoUnited
|
||||
|
||||
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.
|
35
node_modules/cross-spawn/README.md
generated
vendored
Normal file
35
node_modules/cross-spawn/README.md
generated
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
# cross-spawn [](https://travis-ci.org/IndigoUnited/node-cross-spawn)
|
||||
|
||||
A cross platform solution to node's spawn.
|
||||
|
||||
|
||||
## Installation
|
||||
|
||||
`$ npm install cross-spawn`
|
||||
|
||||
|
||||
## Why
|
||||
|
||||
Node has issues when using spawn on Windows:
|
||||
|
||||
- It ignores [PATHEXT](https://github.com/joyent/node/issues/2318)
|
||||
- It does not support [shebangs](http://pt.wikipedia.org/wiki/Shebang)
|
||||
- It does not allow you to run `del` or `dir`
|
||||
|
||||
All these issues are handled correctly by `cross-spawn`.
|
||||
There are some known modules, such as [win-spawn](https://github.com/ForbesLindesay/win-spawn), that try to solve this but they are either broken or provide faulty escaping of shell arguments.
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
Exactly the same way as node's spawn, so it's a drop in replacement.
|
||||
|
||||
|
||||
## Tests
|
||||
|
||||
`$ npm test`
|
||||
|
||||
|
||||
## License
|
||||
|
||||
Released under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
|
115
node_modules/cross-spawn/index.js
generated
vendored
Normal file
115
node_modules/cross-spawn/index.js
generated
vendored
Normal file
@ -0,0 +1,115 @@
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var cp = require('child_process');
|
||||
var LRU = require('lru-cache');
|
||||
|
||||
var isWin = process.platform === 'win32';
|
||||
var shebangCache = LRU({ max: 50, maxAge: 30 * 1000 });
|
||||
|
||||
function readShebang(command) {
|
||||
var buffer;
|
||||
var fd;
|
||||
var match;
|
||||
var shebang;
|
||||
|
||||
// Resolve command to an absolute path if it contains /
|
||||
if (command.indexOf(path.sep) !== -1) {
|
||||
command = path.resolve(command);
|
||||
}
|
||||
|
||||
// Check if its resolved in the cache
|
||||
shebang = shebangCache.get(command);
|
||||
if (shebang) {
|
||||
return shebang;
|
||||
}
|
||||
|
||||
// Read the first 150 bytes from the file
|
||||
buffer = new Buffer(150);
|
||||
|
||||
try {
|
||||
fd = fs.openSync(command, 'r');
|
||||
fs.readSync(fd, buffer, 0, 150, 0);
|
||||
} catch (e) {}
|
||||
|
||||
// Check if it is a shebang
|
||||
match = buffer.toString().trim().match(/\#\!\/usr\/bin\/env ([^\r\n]+)/i);
|
||||
shebang = match && match[1];
|
||||
|
||||
// Store the shebang in the cache
|
||||
shebangCache.set(command, shebang);
|
||||
|
||||
return shebang;
|
||||
}
|
||||
|
||||
function escapeArg(arg, quote) {
|
||||
// Convert to string
|
||||
arg = '' + arg;
|
||||
|
||||
// If we are not going to quote the argument,
|
||||
// escape shell metacharacters, including double and single quotes:
|
||||
if (!quote) {
|
||||
arg = arg.replace(/([\(\)%!\^<>&|;,"' ])/g, '^$1');
|
||||
} else {
|
||||
// Sequence of backslashes followed by a double quote:
|
||||
// double up all the backslashes and escape the double quote
|
||||
arg = arg.replace(/(\\*)"/gi, '$1$1\\"');
|
||||
|
||||
// Sequence of backslashes followed by the end of the string
|
||||
// (which will become a double quote later):
|
||||
// double up all the backslashes
|
||||
arg = arg.replace(/(\\*)$/, '$1$1');
|
||||
|
||||
// All other backslashes occur literally
|
||||
|
||||
// Quote the whole thing:
|
||||
arg = '"' + arg + '"';
|
||||
}
|
||||
|
||||
return arg;
|
||||
}
|
||||
|
||||
function escapeCommand(command) {
|
||||
// Do not escape if this command is not dangerous..
|
||||
// We do this so that commands like "echo" or "ifconfig" work
|
||||
// Quoting them, will make them unnaccessible
|
||||
return /^[a-z0-9_-]+$/i.test(command) ? command : escapeArg(command, true);
|
||||
}
|
||||
|
||||
function spawn(command, args, options) {
|
||||
var applyQuotes;
|
||||
var shebang;
|
||||
|
||||
args = args || [];
|
||||
options = options || {};
|
||||
|
||||
// Use node's spawn if not on windows
|
||||
if (!isWin) {
|
||||
return cp.spawn(command, args, options);
|
||||
}
|
||||
|
||||
// Detect & add support for shebangs
|
||||
shebang = readShebang(command);
|
||||
if (shebang) {
|
||||
args.unshift(command);
|
||||
command = shebang;
|
||||
}
|
||||
|
||||
// Escape command & arguments
|
||||
applyQuotes = command !== 'echo'; // Do not quote arguments for the special "echo" command
|
||||
command = escapeCommand(command);
|
||||
args = args.map(function (arg) {
|
||||
return escapeArg(arg, applyQuotes);
|
||||
});
|
||||
|
||||
// Use cmd.exe
|
||||
args = ['/s', '/c', '"' + command + (args.length ? ' ' + args.join(' ') : '') + '"'];
|
||||
command = process.env.comspec || 'cmd.exe';
|
||||
|
||||
// Tell node's spawn that the arguments are already escaped
|
||||
options.windowsVerbatimArguments = true;
|
||||
|
||||
return cp.spawn(command, args, options);
|
||||
}
|
||||
|
||||
module.exports = spawn;
|
||||
module.exports.spawn = spawn;
|
91
node_modules/cross-spawn/package.json
generated
vendored
Normal file
91
node_modules/cross-spawn/package.json
generated
vendored
Normal file
@ -0,0 +1,91 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
"cross-spawn@^0.2.9",
|
||||
"C:\\Users\\x2mjbyrn\\Source\\Repos\\Skeleton\\node_modules\\concurrently"
|
||||
]
|
||||
],
|
||||
"_from": "cross-spawn@>=0.2.9-0 <0.3.0-0",
|
||||
"_id": "cross-spawn@0.2.9",
|
||||
"_inCache": true,
|
||||
"_location": "/cross-spawn",
|
||||
"_nodeVersion": "0.10.36",
|
||||
"_npmUser": {
|
||||
"email": "andremiguelcruz@msn.com",
|
||||
"name": "satazor"
|
||||
},
|
||||
"_npmVersion": "2.6.1",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"name": "cross-spawn",
|
||||
"raw": "cross-spawn@^0.2.9",
|
||||
"rawSpec": "^0.2.9",
|
||||
"scope": null,
|
||||
"spec": ">=0.2.9-0 <0.3.0-0",
|
||||
"type": "range"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/concurrently"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-0.2.9.tgz",
|
||||
"_shasum": "bd67f96c07efb6303b7fe94c1e979f88478e0a39",
|
||||
"_shrinkwrap": null,
|
||||
"_spec": "cross-spawn@^0.2.9",
|
||||
"_where": "C:\\Users\\x2mjbyrn\\Source\\Repos\\Skeleton\\node_modules\\concurrently",
|
||||
"author": {
|
||||
"email": "hello@indigounited.com",
|
||||
"name": "IndigoUnited",
|
||||
"url": "http://indigounited.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/IndigoUnited/node-cross-spawn/issues/"
|
||||
},
|
||||
"dependencies": {
|
||||
"lru-cache": "^2.5.0"
|
||||
},
|
||||
"description": "Cross platform child_process#spawn",
|
||||
"devDependencies": {
|
||||
"expect.js": "^0.3.0",
|
||||
"mocha": "^1.20.1"
|
||||
},
|
||||
"directories": {},
|
||||
"dist": {
|
||||
"shasum": "bd67f96c07efb6303b7fe94c1e979f88478e0a39",
|
||||
"tarball": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-0.2.9.tgz"
|
||||
},
|
||||
"gitHead": "6fececcbd8331f98b4cfd6560b925bc4d8e77f47",
|
||||
"homepage": "https://github.com/IndigoUnited/node-cross-spawn",
|
||||
"installable": true,
|
||||
"keywords": [
|
||||
"cmd",
|
||||
"cross",
|
||||
"execute",
|
||||
"ext",
|
||||
"hashbang",
|
||||
"path",
|
||||
"path-ext",
|
||||
"path_ext",
|
||||
"platform",
|
||||
"shebang",
|
||||
"spawn",
|
||||
"windows"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "index.js",
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "satazor",
|
||||
"email": "andremiguelcruz@msn.com"
|
||||
}
|
||||
],
|
||||
"name": "cross-spawn",
|
||||
"optionalDependencies": {},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git://github.com/IndigoUnited/node-cross-spawn.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "mocha --bail -R spec"
|
||||
},
|
||||
"version": "0.2.9"
|
||||
}
|
Reference in New Issue
Block a user