Big update!Announcing Socket for GitHub 1.0. Learn more
Socket
BlogLoveFAQ
Install
Log in

pump

Package Overview
Dependencies
2
Maintainers
1
Versions
25
Issues
File Explorer

Advanced tools

pump

pipe streams together and close all of them if one of them closes

    3.0.0latest

Version published
Maintainers
1
Weekly downloads
37,801,739
decreased by-2.84%

Weekly downloads

Readme

Source

pump

pump is a small node module that pipes streams together and destroys all of them if one of them closes.

npm install pump

build status

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

pump is part of the mississippi stream utility collection which includes more useful stream modules similar to this one.

Keywords

FAQs

What is pump?

pipe streams together and close all of them if one of them closes

Is pump popular?

The npm package pump receives a total of 31,826,805 weekly downloads. As such, pump popularity was classified as popular.

Is pump well maintained?

We found that pump demonstrated a not healthy version release cadence and project activity because the last version was released a year ago.It has 1 open source maintainer collaborating on the project.

Last updated on 31 Jan 2018
Socket

Product

Subscribe to our newsletter

Get open source security insights delivered straight into your inbox. Be the first to learn about new features and product updates.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc