summaryrefslogtreecommitdiffstats
path: root/node_modules/stdout-stream/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/stdout-stream/README.md')
-rw-r--r--node_modules/stdout-stream/README.md45
1 files changed, 45 insertions, 0 deletions
diff --git a/node_modules/stdout-stream/README.md b/node_modules/stdout-stream/README.md
new file mode 100644
index 0000000..ede4fcd
--- /dev/null
+++ b/node_modules/stdout-stream/README.md
@@ -0,0 +1,45 @@
+# stdout-stream
+
+Non-blocking stdout stream
+
+ npm install stdout-stream
+
+[![build status](http://img.shields.io/travis/mafintosh/level-filesystem.svg?style=flat)](http://travis-ci.org/mafintosh/stdout-stream)
+![dat](http://img.shields.io/badge/Development%20sponsored%20by-dat-green.svg?style=flat)
+
+
+## Rant
+
+Try saving this example as `example.js`
+
+``` js
+console.error('start');
+process.stdout.write(new Buffer(1024*1024));
+console.error('end');
+```
+
+And run the following program
+
+```
+node example.js | sleep 1000
+```
+
+The program will never print `end` since stdout in node currently is blocking - even when its being piped (!).
+
+stdout-stream tries to fix this by being a stream that writes to stdout but never blocks
+
+## Usage
+
+``` js
+var stdout = require('stdout-stream');
+
+stdout.write('hello\n'); // write should NEVER block
+stdout.write('non-blocking\n')
+stdout.write('world\n');
+```
+
+`stdout-stream` should behave in the same way as `process.stdout` (i.e. do not end on pipe etc)
+
+## License
+
+MIT