4.0.6 • Published 4 months ago

it-goodbye v4.0.6

Weekly downloads
6,589
License
Apache-2.0 OR MIT
Repository
github
Last release
4 months ago

it-goodbye

codecov CI

Add a goodbye handshake to a duplex async iterable

About

Add a goodbye handshake to a duplex async iterable.

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 it-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 it-goodbye.

import { goodbye } from 'it-goodbye'

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

return goodbye(duplex, 'GoodBye')

Install

$ npm i it-goodbye

Browser <script> tag

Loading this module through a script tag will make it's exports available as ItGoodbye in the global namespace.

<script src="https://unpkg.com/it-goodbye/dist/index.min.js"></script>

API Docs

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

4.0.5

4 months ago

4.0.4

4 months ago

4.0.6

4 months ago

4.0.3

4 months ago

4.0.2

9 months ago

4.0.1

2 years ago

4.0.0

2 years ago

3.0.0

3 years ago

2.0.2

4 years ago

2.0.1

5 years ago

2.0.0

5 years ago

1.0.0

5 years ago