json.dump appears to add extraneous spaces before newline characters. By specifying the separators option, we can remove these whitespaces, reducing the diff noise. Solution taken from https://stackoverflow.com/questions/16311562/python-json-without-whitespaces DISABLE_THIRD_PARTY_CHECK=Fix whitespace in node_modules Change-Id: I26556e5053f19a9021ad41779319bdfe3f8c2b6c Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2013154 Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org>
pump
pump is a small node module that pipes streams together and destroys all of them if one of them closes.
npm install pump
What problem does it solve?
When using standard source.pipe(dest) source will not be destroyed if dest emits close or an error.
You are also not able to provide a callback to tell when then pipe has finished.
pump does these two things for you
Usage
Simply pass the streams you want to pipe together to pump and add an optional callback
var pump = require('pump')
var fs = require('fs')
var source = fs.createReadStream('/dev/random')
var dest = fs.createWriteStream('/dev/null')
pump(source, dest, function(err) {
console.log('pipe finished', err)
})
setTimeout(function() {
dest.destroy() // when dest is closed pump will destroy source
}, 1000)
You can use pump to pipe more than two streams together as well
var transform = someTransformStream()
pump(source, transform, anotherTransform, dest, function(err) {
console.log('pipe finished', err)
})
If source, transform, anotherTransform or dest closes all of them will be destroyed.
Similarly to stream.pipe(), pump() returns the last stream passed in, so you can do:
return pump(s1, s2) // returns s2
If you want to return a stream that combines both s1 and s2 to a single stream use pumpify instead.
License
MIT
Related
pump is part of the mississippi stream utility collection which includes more useful stream modules similar to this one.