Use nice-pipe instead of own code.
This commit is contained in:
parent
5564e4daa2
commit
e88d0579b0
@ -21,6 +21,7 @@ var got = require('got');
|
|||||||
var humanFormat = require('human-format');
|
var humanFormat = require('human-format');
|
||||||
var isObject = require('lodash.isobject');
|
var isObject = require('lodash.isobject');
|
||||||
var multiline = require('multiline');
|
var multiline = require('multiline');
|
||||||
|
var nicePipe = require('nice-pipe');
|
||||||
var pairs = require('lodash.pairs');
|
var pairs = require('lodash.pairs');
|
||||||
var prettyMs = require('pretty-ms');
|
var prettyMs = require('pretty-ms');
|
||||||
var progressStream = require('progress-stream');
|
var progressStream = require('progress-stream');
|
||||||
@ -53,28 +54,6 @@ function connect() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function pipeWithErrors(streams) {
|
|
||||||
var current;
|
|
||||||
|
|
||||||
forEach(streams, function (stream) {
|
|
||||||
if (!stream) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (current) {
|
|
||||||
current.on('error', function forwardError(error) {
|
|
||||||
stream.emit('error', error);
|
|
||||||
});
|
|
||||||
current = current.pipe(stream);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
current = stream;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
return current;
|
|
||||||
}
|
|
||||||
|
|
||||||
function printProgress(progress) {
|
function printProgress(progress) {
|
||||||
if (progress.length) {
|
if (progress.length) {
|
||||||
console.warn('%s% of %s @ %s/s - ETA %s',
|
console.warn('%s% of %s @ %s/s - ETA %s',
|
||||||
@ -275,7 +254,7 @@ function call(args) {
|
|||||||
url = resolveUrl(baseUrl, result[key]);
|
url = resolveUrl(baseUrl, result[key]);
|
||||||
var output = createWriteStream(file);
|
var output = createWriteStream(file);
|
||||||
|
|
||||||
return eventToPromise(pipeWithErrors([
|
return eventToPromise(nicePipe([
|
||||||
got(url),
|
got(url),
|
||||||
progressStream({ time: 1e3 }, printProgress),
|
progressStream({ time: 1e3 }, printProgress),
|
||||||
output,
|
output,
|
||||||
@ -288,7 +267,7 @@ function call(args) {
|
|||||||
return stat(file).then(function (stats) {
|
return stat(file).then(function (stats) {
|
||||||
var length = stats.size;
|
var length = stats.size;
|
||||||
|
|
||||||
var input = pipeWithErrors([
|
var input = nicePipe([
|
||||||
createReadStream(file),
|
createReadStream(file),
|
||||||
progressStream({
|
progressStream({
|
||||||
length: length,
|
length: length,
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
"lodash.pairs": "^2.4.1",
|
"lodash.pairs": "^2.4.1",
|
||||||
"mkdirp": "^0.5.0",
|
"mkdirp": "^0.5.0",
|
||||||
"multiline": "^0.3.4",
|
"multiline": "^0.3.4",
|
||||||
|
"nice-pipe": "0.0.0",
|
||||||
"pretty-ms": "^1.0.0",
|
"pretty-ms": "^1.0.0",
|
||||||
"progress-stream": "^0.5.0",
|
"progress-stream": "^0.5.0",
|
||||||
"sent": "^1.1.0",
|
"sent": "^1.1.0",
|
||||||
|
Loading…
Reference in New Issue
Block a user