Comparing version 0.4.0 to 0.5.0
87
cli.js
#!/usr/bin/env node | ||
require('graceful-fs'); | ||
var minimist = require('minimist'); | ||
@@ -19,4 +18,5 @@ var osenv = require('osenv'); | ||
'delete-removed': false, | ||
'max-sockets': 30, | ||
'max-sockets': 20, | ||
'insecure': false, | ||
'region': 'us-east-1' | ||
}, | ||
@@ -69,2 +69,3 @@ 'boolean': [ | ||
sslEnabled: !args.insecure, | ||
region: args.region, | ||
}, | ||
@@ -116,3 +117,2 @@ }); | ||
var syncer = method.call(client, params); | ||
process.stderr.write("Listing objects..."); | ||
setUpProgress(syncer); | ||
@@ -122,3 +122,3 @@ } | ||
function uploadGetS3Params(filePath, stat, callback) { | ||
console.error("Uploading", filePath); | ||
//console.error("Uploading", filePath); | ||
callback(null, { | ||
@@ -130,3 +130,3 @@ ContentType: getContentType(filePath), | ||
function downloadGetS3Params(filePath, s3Object, callback) { | ||
console.error("Downloading", filePath); | ||
//console.error("Downloading", filePath); | ||
callback(null, {}); | ||
@@ -303,32 +303,47 @@ } | ||
function setUpProgress(o, notBytes, notObjects) { | ||
var start; | ||
var sawAnyProgress = false; | ||
o.on('progress', function() { | ||
if (o.objectsFound != null && o.progressAmount === 0) { | ||
process.stderr.write("\rListing objects... " + o.objectsFound + " objects found "); | ||
sawAnyProgress = true; | ||
function setUpProgress(o, notBytes) { | ||
var start = null; | ||
var printFn = process.stderr.isTTY ? printProgress : noop; | ||
printFn(); | ||
var progressInterval = setInterval(printFn, 100); | ||
o.on('end', function() { | ||
clearInterval(progressInterval); | ||
process.stderr.write("\ndone\n"); | ||
}); | ||
function printProgress() { | ||
var percent = Math.floor(o.progressAmount / o.progressTotal * 100); | ||
var amt = notBytes ? String(o.progressAmount) : fmtBytes(o.progressAmount); | ||
var total = notBytes ? String(o.progressTotal) : fmtBytes(o.progressTotal); | ||
var parts = []; | ||
if (o.filesFound > 0 && !o.doneFindingFiles) { | ||
parts.push(o.filesFound + " files"); | ||
} | ||
if (o.progressTotal === 0) return; | ||
if (!start) { | ||
sawAnyProgress = true; | ||
start = new Date(); | ||
if (o.objectsFound > 0 && !o.doneFindingObjects) { | ||
parts.push(o.objectsFound + " objects"); | ||
} | ||
var percent = Math.floor(o.progressAmount / o.progressTotal * 100); | ||
var line = "\rProgress: " + | ||
o.progressAmount + "/" + o.progressTotal + " " + percent + "%"; | ||
if (!notBytes) { | ||
var now = new Date(); | ||
var seconds = (now - start) / 1000; | ||
var bytesPerSec = o.progressAmount / seconds; | ||
var humanSpeed = filesize(bytesPerSec).human({jedec: true}) + '/s'; | ||
line += " " + humanSpeed; | ||
if (o.deleteTotal > 0) { | ||
parts.push(o.deleteAmount + "/" + o.deleteTotal + " deleted"); | ||
} | ||
line += " "; | ||
if (o.progressMd5Amount > 0 && !o.doneMd5) { | ||
parts.push(fmtBytes(o.progressMd5Amount) + "/" + fmtBytes(o.progressMd5Total) + " MD5"); | ||
} | ||
if (o.progressTotal > 0) { | ||
if (!start) start = new Date(); | ||
var part = amt + "/" + total; | ||
if (!isNaN(percent)) part += " " + percent + "% done"; | ||
parts.push(part); | ||
if (!notBytes) { | ||
var now = new Date(); | ||
var seconds = (now - start) / 1000; | ||
var bytesPerSec = o.progressAmount / seconds; | ||
var humanSpeed = fmtBytes(bytesPerSec) + '/s'; | ||
parts.push(humanSpeed); | ||
} | ||
} | ||
var line = parts.join(", "); | ||
process.stderr.clearLine(); | ||
process.stderr.cursorTo(0); | ||
process.stderr.write(line); | ||
}); | ||
o.on('end', function() { | ||
if (!sawAnyProgress) return; | ||
process.stderr.write("\n"); | ||
}); | ||
} | ||
} | ||
@@ -357,1 +372,11 @@ | ||
} | ||
function fmtBytes(byteCount) { | ||
if (byteCount <= 0) { | ||
return "0B"; | ||
} else { | ||
return filesize(byteCount).human({jedec: true}); | ||
} | ||
} | ||
function noop() {} |
{ | ||
"name": "s3-cli", | ||
"version": "0.4.0", | ||
"version": "0.5.0", | ||
"description": "command line utility to go along with s3 module", | ||
@@ -12,9 +12,8 @@ "main": "index.js", | ||
"dependencies": { | ||
"s3": "^1.3.0", | ||
"osenv": "0.0.3", | ||
"ini": "^1.2.0", | ||
"minimist": "^0.1.0", | ||
"mime": "^1.2.11", | ||
"file-size": "0.0.3", | ||
"graceful-fs": "^2.0.3" | ||
"file-size": "0.0.5", | ||
"ini": "~1.2.1", | ||
"mime": "~1.2.11", | ||
"minimist": "~0.2.0", | ||
"osenv": "~0.1.0", | ||
"s3": "~3.0.1" | ||
}, | ||
@@ -21,0 +20,0 @@ "devDependencies": {}, |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
11572
6
342
+ Addedaws-sdk@2.0.31(transitive)
+ Addedfile-size@0.0.5(transitive)
+ Addedfindit@2.0.0(transitive)
+ Addedgraceful-fs@3.0.12(transitive)
+ Addedini@1.2.1(transitive)
+ Addedmime@1.2.11(transitive)
+ Addedminimist@0.2.4(transitive)
+ Addednatives@1.1.6(transitive)
+ Addedos-homedir@1.0.2(transitive)
+ Addedos-tmpdir@1.0.2(transitive)
+ Addedosenv@0.1.5(transitive)
+ Addedpend@1.1.3(transitive)
+ Addedrimraf@2.2.8(transitive)
+ Addeds3@3.0.2(transitive)
+ Addedsax@0.4.2(transitive)
+ Addedxml2js@0.2.6(transitive)
+ Addedxmlbuilder@0.4.2(transitive)
- Removedgraceful-fs@^2.0.3
- Removedavailable-typed-arrays@1.0.7(transitive)
- Removedaws-sdk@2.1691.0(transitive)
- Removedbalanced-match@1.0.2(transitive)
- Removedbase64-js@1.5.1(transitive)
- Removedbrace-expansion@1.1.11(transitive)
- Removedbuffer@4.9.2(transitive)
- Removedcall-bind@1.0.7(transitive)
- Removedconcat-map@0.0.1(transitive)
- Removeddefine-data-property@1.1.4(transitive)
- Removedes-define-property@1.0.0(transitive)
- Removedes-errors@1.3.0(transitive)
- Removedevents@1.1.1(transitive)
- Removedfile-size@0.0.3(transitive)
- Removedfindit@1.2.0(transitive)
- Removedfor-each@0.3.3(transitive)
- Removedfs.realpath@1.0.0(transitive)
- Removedfunction-bind@1.1.2(transitive)
- Removedget-intrinsic@1.2.4(transitive)
- Removedglob@7.2.3(transitive)
- Removedgopd@1.0.1(transitive)
- Removedgraceful-fs@2.0.3(transitive)
- Removedhas-property-descriptors@1.0.2(transitive)
- Removedhas-proto@1.0.3(transitive)
- Removedhas-symbols@1.0.3(transitive)
- Removedhas-tostringtag@1.0.2(transitive)
- Removedhasown@2.0.2(transitive)
- Removedieee754@1.1.13(transitive)
- Removedinflight@1.0.6(transitive)
- Removedinherits@2.0.4(transitive)
- Removedini@1.3.8(transitive)
- Removedis-arguments@1.1.1(transitive)
- Removedis-callable@1.2.7(transitive)
- Removedis-generator-function@1.0.10(transitive)
- Removedis-typed-array@1.1.13(transitive)
- Removedisarray@1.0.0(transitive)
- Removedjmespath@0.16.0(transitive)
- Removedmime@1.6.0(transitive)
- Removedminimatch@3.1.2(transitive)
- Removedminimist@0.1.0(transitive)
- Removedonce@1.4.0(transitive)
- Removedosenv@0.0.3(transitive)
- Removedpath-is-absolute@1.0.1(transitive)
- Removedpend@1.2.0(transitive)
- Removedpossible-typed-array-names@1.0.0(transitive)
- Removedpunycode@1.3.2(transitive)
- Removedquerystring@0.2.0(transitive)
- Removedquotemeta@0.0.0(transitive)
- Removedrimraf@2.7.1(transitive)
- Removeds3@1.3.0(transitive)
- Removedsax@1.2.1(transitive)
- Removedset-function-length@1.2.2(transitive)
- Removedurl@0.10.3(transitive)
- Removedutil@0.12.5(transitive)
- Removeduuid@8.0.0(transitive)
- Removedwhich-typed-array@1.1.15(transitive)
- Removedwrappy@1.0.2(transitive)
- Removedxml2js@0.6.2(transitive)
- Removedxmlbuilder@11.0.1(transitive)
Updatedfile-size@0.0.5
Updatedini@~1.2.1
Updatedmime@~1.2.11
Updatedminimist@~0.2.0
Updatedosenv@~0.1.0
Updateds3@~3.0.1