mirror of
https://github.com/morhetz/gruvbox.git
synced 2025-11-16 23:33:38 -05:00
chore(package): re-init package with commitizen and standard-release
This commit is contained in:
22
node_modules/spawn-sync/lib/json-buffer/LICENSE
generated
vendored
Normal file
22
node_modules/spawn-sync/lib/json-buffer/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
Copyright (c) 2013 Dominic Tarr
|
||||
|
||||
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.
|
||||
1
node_modules/spawn-sync/lib/json-buffer/README.md
generated
vendored
Normal file
1
node_modules/spawn-sync/lib/json-buffer/README.md
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
Code based on https://github.com/dominictarr/json-buffer but adapted to be simpler to run in a purely node.js environment
|
||||
56
node_modules/spawn-sync/lib/json-buffer/index.js
generated
vendored
Normal file
56
node_modules/spawn-sync/lib/json-buffer/index.js
generated
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
|
||||
'use strict';
|
||||
|
||||
//TODO: handle reviver/dehydrate function like normal
|
||||
//and handle indentation, like normal.
|
||||
//if anyone needs this... please send pull request.
|
||||
|
||||
exports.stringify = function stringify (o) {
|
||||
if(o && Buffer.isBuffer(o))
|
||||
return JSON.stringify(':base64:' + o.toString('base64'))
|
||||
|
||||
if(o && o.toJSON)
|
||||
o = o.toJSON()
|
||||
|
||||
if(o && 'object' === typeof o) {
|
||||
var s = ''
|
||||
var array = Array.isArray(o)
|
||||
s = array ? '[' : '{'
|
||||
var first = true
|
||||
|
||||
for(var k in o) {
|
||||
var ignore = 'function' == typeof o[k] || (!array && 'undefined' === typeof o[k])
|
||||
if(Object.hasOwnProperty.call(o, k) && !ignore) {
|
||||
if(!first)
|
||||
s += ','
|
||||
first = false
|
||||
if (array) {
|
||||
s += stringify(o[k])
|
||||
} else if (o[k] !== void(0)) {
|
||||
s += stringify(k) + ':' + stringify(o[k])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s += array ? ']' : '}'
|
||||
|
||||
return s
|
||||
} else if ('string' === typeof o) {
|
||||
return JSON.stringify(/^:/.test(o) ? ':' + o : o)
|
||||
} else if ('undefined' === typeof o) {
|
||||
return 'null';
|
||||
} else
|
||||
return JSON.stringify(o)
|
||||
}
|
||||
|
||||
exports.parse = function (s) {
|
||||
return JSON.parse(s, function (key, value) {
|
||||
if('string' === typeof value) {
|
||||
if(/^:base64:/.test(value))
|
||||
return new Buffer(value.substring(8), 'base64')
|
||||
else
|
||||
return /^:/.test(value) ? value.substring(1) : value
|
||||
}
|
||||
return value
|
||||
})
|
||||
}
|
||||
89
node_modules/spawn-sync/lib/spawn-sync.js
generated
vendored
Normal file
89
node_modules/spawn-sync/lib/spawn-sync.js
generated
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
'use strict';
|
||||
|
||||
var path = require('path');
|
||||
var fs = require('fs');
|
||||
var tmpdir = require('os').tmpdir || require('os-shim').tmpdir;
|
||||
var cp = require('child_process');
|
||||
var sleep;
|
||||
var JSON = require('./json-buffer');
|
||||
try {
|
||||
sleep = require('try-thread-sleep');
|
||||
} catch (ex) {
|
||||
console.warn('Native thread-sleep not available.');
|
||||
console.warn('This will result in much slower performance, but it will still work.');
|
||||
console.warn('You should re-install spawn-sync or upgrade to the lastest version of node if possible.');
|
||||
console.warn('Check ' + path.resolve(__dirname, '../error.log') + ' for more details');
|
||||
sleep = function () {};
|
||||
}
|
||||
|
||||
var temp = path.normalize(path.join(tmpdir(), 'spawn-sync'));
|
||||
|
||||
function randomFileName(name) {
|
||||
function randomHash(count) {
|
||||
if (count === 1)
|
||||
return parseInt(16*Math.random(), 10).toString(16);
|
||||
else {
|
||||
var hash = '';
|
||||
for (var i=0; i<count; i++)
|
||||
hash += randomHash(1);
|
||||
return hash;
|
||||
}
|
||||
}
|
||||
|
||||
return temp + '_' + name + '_' + String(process.pid) + randomHash(20);
|
||||
}
|
||||
function unlink(filename) {
|
||||
try {
|
||||
fs.unlinkSync(filename);
|
||||
} catch (ex) {
|
||||
if (ex.code !== 'ENOENT') throw ex;
|
||||
}
|
||||
}
|
||||
function tryUnlink(filename) {
|
||||
// doesn't matter too much if we fail to delete temp files
|
||||
try {
|
||||
fs.unlinkSync(filename);
|
||||
} catch(e) {}
|
||||
}
|
||||
|
||||
function invoke(cmd) {
|
||||
// location to keep flag for busy waiting fallback
|
||||
var finished = randomFileName("finished");
|
||||
unlink(finished);
|
||||
if (process.platform === 'win32') {
|
||||
cmd = cmd + '& echo "finished" > ' + finished;
|
||||
} else {
|
||||
cmd = cmd + '; echo "finished" > ' + finished;
|
||||
}
|
||||
cp.exec(cmd);
|
||||
|
||||
while (!fs.existsSync(finished)) {
|
||||
// busy wait
|
||||
sleep(200);
|
||||
}
|
||||
|
||||
tryUnlink(finished);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
module.exports = spawnSyncFallback;
|
||||
function spawnSyncFallback(cmd, commandArgs, options) {
|
||||
var args = [];
|
||||
for (var i = 0; i < arguments.length; i++) {
|
||||
args.push(arguments[i]);
|
||||
}
|
||||
|
||||
// node.js script to run the command
|
||||
var worker = path.normalize(__dirname + '/worker.js');
|
||||
// location to store arguments
|
||||
var input = randomFileName('input');
|
||||
var output = randomFileName('output');
|
||||
unlink(output);
|
||||
|
||||
fs.writeFileSync(input, JSON.stringify(args));
|
||||
invoke('"' + process.execPath + '" "' + worker + '" "' + input + '" "' + output + '"');
|
||||
var res = JSON.parse(fs.readFileSync(output, 'utf8'));
|
||||
tryUnlink(input);tryUnlink(output);
|
||||
return res;
|
||||
}
|
||||
56
node_modules/spawn-sync/lib/worker.js
generated
vendored
Normal file
56
node_modules/spawn-sync/lib/worker.js
generated
vendored
Normal file
@@ -0,0 +1,56 @@
|
||||
'use strict';
|
||||
|
||||
var cp = require('child_process');
|
||||
var fs = require('fs');
|
||||
var concat = require('concat-stream');
|
||||
var JSON = require('./json-buffer');
|
||||
|
||||
var inputFile = process.argv[2];
|
||||
var outputFile = process.argv[3];
|
||||
|
||||
var args = JSON.parse(fs.readFileSync(inputFile, 'utf8'));
|
||||
function output(result) {
|
||||
fs.writeFileSync(outputFile, JSON.stringify(result));
|
||||
}
|
||||
|
||||
var child = cp.spawn.apply(cp, args);
|
||||
var options = (args[2] && typeof args[2] === 'object') ?
|
||||
args[2] :
|
||||
(args[1] && typeof args[1] === 'object' && !Array.isArray(args[1])) ?
|
||||
args[1] :
|
||||
{};
|
||||
|
||||
var complete = false;
|
||||
var stdout, stderr;
|
||||
child.stdout && child.stdout.pipe(concat(function (buf) {
|
||||
stdout = buf.length ? buf : new Buffer(0);
|
||||
}));
|
||||
child.stderr && child.stderr.pipe(concat(function (buf) {
|
||||
stderr = buf.length ? buf : new Buffer(0);
|
||||
}));
|
||||
child.on('error', function (err) {
|
||||
output({pid: child.pid, error: err.message});
|
||||
});
|
||||
child.on('close', function (status, signal) {
|
||||
if (options.encoding && options.encoding !== 'buffer') {
|
||||
stdout = stdout.toString(options.encoding);
|
||||
stderr = stderr.toString(options.encoding);
|
||||
}
|
||||
output({
|
||||
pid: child.pid,
|
||||
output: [null, stdout, stderr],
|
||||
stdout: stdout,
|
||||
stderr: stderr,
|
||||
status: status,
|
||||
signal: signal
|
||||
});
|
||||
});
|
||||
|
||||
if (options.timeout && typeof options.timeout === 'number') {
|
||||
setTimeout(function () {
|
||||
child.kill(options.killSignal || 'SIGTERM');
|
||||
}, options.timeout);
|
||||
}
|
||||
if (options.input && (typeof options.input === 'string' || Buffer.isBuffer(options.input))) {
|
||||
child.stdin.end(options.input);
|
||||
}
|
||||
Reference in New Issue
Block a user