pull-goodbye

0.0.3 • Public • Published

pull-goodbye

Add a goodbye handshake to a duplex pull-stream.

In a uniplex stream, the end event signifies the end of the stream. But a duplex stream, it's a little more complicated - there are two paired streams that may end independently. node's net module has an allowHalfOpen mode, but support for this method is patchy - more often, by default duplex streams are like a telephone - when one side hangs up, both streams are terminated. Humans deal with this problem by moving stream termination into the "application" layer - it's polite to say "goodbye", and to wait to receive "goodbye" before call termination.

example

given another duplex stream, wrap it with pull-goodbye. goodbye(stream, goodbye_message) takes a duplex stream and a message, (by default, the string "GOODBYE", this must be encodable whatever codec the stream uses. The codec should probably be applied outside of pull-goodbye

var goodbye = require('pull-goodbye')
var serializer = require('pull-serializer')

//a duplex stream from somewhere...
var duplex = whatever.createStream()

return serializer(goodbye(duplex, 'GoodBye'))

License

MIT

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 0.0.3
    217
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 0.0.3
    217
  • 0.0.2
    83
  • 0.0.1
    0
  • 0.0.0
    0

Package Sidebar

Install

npm i pull-goodbye

Weekly Downloads

196

Version

0.0.3

License

MIT

Unpacked Size

6.03 kB

Total Files

7

Last publish

Collaborators

  • dominictarr
  • arj03