CHANGELOG.md 0000664 00000001316 15111317000 0006345 0 ustar 00 # Change Log
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
# [2.0.0](https://github.com/yargs/set-blocking/compare/v1.0.0...v2.0.0) (2016-05-17)
### Features
* add an isTTY check ([#3](https://github.com/yargs/set-blocking/issues/3)) ([66ce277](https://github.com/yargs/set-blocking/commit/66ce277))
### BREAKING CHANGES
* stdio/stderr will not be set to blocking if isTTY === false
# 1.0.0 (2016-05-14)
### Features
* implemented shim for stream._handle.setBlocking ([6bde0c0](https://github.com/yargs/set-blocking/commit/6bde0c0))
LICENSE.txt 0000664 00000001333 15111317000 0006356 0 ustar 00 Copyright (c) 2016, Contributors
Permission to use, copy, modify, and/or distribute this software
for any purpose with or without fee is hereby granted, provided
that the above copyright notice and this permission notice
appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE
LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
README.md 0000664 00000003002 15111317000 0006005 0 ustar 00 # set-blocking
[](https://travis-ci.org/yargs/set-blocking)
[](https://www.npmjs.com/package/set-blocking)
[](https://coveralls.io/r/yargs/set-blocking?branch=master)
[](https://github.com/conventional-changelog/standard-version)
set blocking `stdio` and `stderr` ensuring that terminal output does not truncate.
```js
const setBlocking = require('set-blocking')
setBlocking(true)
console.log(someLargeStringToOutput)
```
## Historical Context/Word of Warning
This was created as a shim to address the bug discussed in [node #6456](https://github.com/nodejs/node/issues/6456). This bug crops up on
newer versions of Node.js (`0.12+`), truncating terminal output.
You should be mindful of the side-effects caused by using `set-blocking`:
* if your module sets blocking to `true`, it will effect other modules
consuming your library. In [yargs](https://github.com/yargs/yargs/blob/master/yargs.js#L653) we only call
`setBlocking(true)` once we already know we are about to call `process.exit(code)`.
* this patch will not apply to subprocesses spawned with `isTTY = true`, this is
the [default `spawn()` behavior](https://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options).
## License
ISC
index.js 0000664 00000000374 15111317000 0006204 0 ustar 00 module.exports = function (blocking) {
[process.stdout, process.stderr].forEach(function (stream) {
if (stream._handle && stream.isTTY && typeof stream._handle.setBlocking === 'function') {
stream._handle.setBlocking(blocking)
}
})
}
package.json 0000664 00000003441 15111317000 0007023 0 ustar 00 {
"_args": [
[
"set-blocking@2.0.0",
"/home/freeclou/app.optimyar.com/backend"
]
],
"_from": "set-blocking@2.0.0",
"_id": "set-blocking@2.0.0",
"_inBundle": false,
"_integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
"_location": "/set-blocking",
"_phantomChildren": {},
"_requested": {
"type": "version",
"registry": true,
"raw": "set-blocking@2.0.0",
"name": "set-blocking",
"escapedName": "set-blocking",
"rawSpec": "2.0.0",
"saveSpec": null,
"fetchSpec": "2.0.0"
},
"_requiredBy": [
"/npmlog",
"/webpack-cli/yargs",
"/webpack-dev-server/yargs",
"/yargs"
],
"_resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"_spec": "2.0.0",
"_where": "/home/freeclou/app.optimyar.com/backend",
"author": {
"name": "Ben Coe",
"email": "ben@npmjs.com"
},
"bugs": {
"url": "https://github.com/yargs/set-blocking/issues"
},
"description": "set blocking stdio and stderr ensuring that terminal output does not truncate",
"devDependencies": {
"chai": "^3.5.0",
"coveralls": "^2.11.9",
"mocha": "^2.4.5",
"nyc": "^6.4.4",
"standard": "^7.0.1",
"standard-version": "^2.2.1"
},
"files": [
"index.js",
"LICENSE.txt"
],
"homepage": "https://github.com/yargs/set-blocking#readme",
"keywords": [
"flush",
"terminal",
"blocking",
"shim",
"stdio",
"stderr"
],
"license": "ISC",
"main": "index.js",
"name": "set-blocking",
"repository": {
"type": "git",
"url": "git+https://github.com/yargs/set-blocking.git"
},
"scripts": {
"coverage": "nyc report --reporter=text-lcov | coveralls",
"pretest": "standard",
"test": "nyc mocha ./test/*.js",
"version": "standard-version"
},
"version": "2.0.0"
}