{"_id":"destroy","_rev":"180007","name":"destroy","description":"destroy a stream if possible","dist-tags":{"latest":"1.2.0"},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"time":{"modified":"2022-10-18T09:40:09.000Z","created":"2014-08-15T06:30:06.962Z","1.2.0":"2022-03-20T19:03:12.452Z","1.1.1":"2022-02-28T20:11:00.367Z","1.1.0":"2022-01-25T18:57:27.526Z","1.0.4":"2016-01-16T03:14:05.899Z","1.0.3":"2014-08-15T06:30:06.962Z"},"users":{},"author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"repository":{"type":"git","url":"git+https://github.com/stream-utils/destroy.git"},"versions":{"1.2.0":{"name":"destroy","description":"destroy a stream if possible","version":"1.2.0","author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"contributors":[{"name":"Douglas Christopher Wilson","email":"doug@somethingdoug.com"}],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/stream-utils/destroy.git"},"devDependencies":{"eslint":"7.32.0","eslint-config-standard":"14.1.1","eslint-plugin-import":"2.25.4","eslint-plugin-node":"11.1.0","eslint-plugin-promise":"5.2.0","eslint-plugin-standard":"4.1.0","mocha":"9.2.2","nyc":"15.1.0"},"engines":{"node":">= 0.8","npm":"1.2.8000 || >= 1.4.16"},"scripts":{"lint":"eslint .","test":"mocha --reporter spec","test-ci":"nyc --reporter=lcovonly --reporter=text npm test","test-cov":"nyc --reporter=html --reporter=text npm test"},"keywords":["stream","streams","destroy","cleanup","leak","fd"],"gitHead":"f387a486a42869ab8ef1c37a90922925063aeb57","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"homepage":"https://github.com/stream-utils/destroy#readme","_id":"destroy@1.2.0","_nodeVersion":"16.14.0","_npmVersion":"8.3.1","dist":{"shasum":"4803735509ad8be552934c67df614f94e66fa015","size":3379,"noattachment":false,"key":"/destroy/-/destroy-1.2.0.tgz","tarball":"http://name.csiicloud.com:7001/destroy/download/destroy-1.2.0.tgz"},"_npmUser":{"name":"dougwilson","email":"doug@somethingdoug.com"},"directories":{},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/destroy_1.2.0_1647802992075_0.9023270978475559"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-03-20T19:03:15.435Z","publish_time":1647802992452,"_cnpm_publish_time":1647802992452},"1.1.1":{"name":"destroy","description":"destroy a stream if possible","version":"1.1.1","author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"contributors":[{"name":"Douglas Christopher Wilson","email":"doug@somethingdoug.com"}],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/stream-utils/destroy.git"},"devDependencies":{"eslint":"7.32.0","eslint-config-standard":"14.1.1","eslint-plugin-import":"2.25.4","eslint-plugin-node":"11.1.0","eslint-plugin-promise":"5.2.0","eslint-plugin-standard":"4.1.0","mocha":"9.2.1","nyc":"15.1.0"},"engines":{"node":">= 0.8","npm":"1.2.8000 || >= 1.4.16"},"scripts":{"lint":"eslint .","test":"mocha --reporter spec","test-ci":"nyc --reporter=lcovonly --reporter=text npm test","test-cov":"nyc --reporter=html --reporter=text npm test"},"keywords":["stream","streams","destroy","cleanup","leak","fd"],"gitHead":"b7fee52bfa3f7590a1fc444ffc5356035e82b6ca","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"homepage":"https://github.com/stream-utils/destroy#readme","_id":"destroy@1.1.1","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"shasum":"38a65ed2f2615ad12bf59c6b5e885512c0cf13dd","size":3155,"noattachment":false,"key":"/destroy/-/destroy-1.1.1.tgz","tarball":"http://name.csiicloud.com:7001/destroy/download/destroy-1.1.1.tgz"},"_npmUser":{"name":"dougwilson","email":"doug@somethingdoug.com"},"directories":{},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/destroy_1.1.1_1646079060228_0.06464213033636246"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-02-28T20:11:09.700Z","publish_time":1646079060367,"_cnpm_publish_time":1646079060367},"1.1.0":{"name":"destroy","description":"destroy a stream if possible","version":"1.1.0","author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"contributors":[{"name":"Douglas Christopher Wilson","email":"doug@somethingdoug.com"}],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/stream-utils/destroy.git"},"devDependencies":{"eslint":"7.32.0","eslint-config-standard":"14.1.1","eslint-plugin-import":"2.25.4","eslint-plugin-node":"11.1.0","eslint-plugin-promise":"5.2.0","eslint-plugin-standard":"4.1.0","mocha":"9.2.0","nyc":"15.1.0"},"engines":{"node":">= 0.8","npm":"1.2.8000 || >= 1.4.16"},"scripts":{"lint":"eslint .","test":"mocha --reporter spec","test-ci":"nyc --reporter=lcovonly --reporter=text npm test","test-cov":"nyc --reporter=html --reporter=text npm test"},"keywords":["stream","streams","destroy","cleanup","leak","fd"],"gitHead":"40e874982939d8d0b04afc8d1576307842b000d2","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"homepage":"https://github.com/stream-utils/destroy#readme","_id":"destroy@1.1.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"shasum":"b77ae22e472d85437141319d32ae40b344dff38a","size":2988,"noattachment":false,"key":"/destroy/-/destroy-1.1.0.tgz","tarball":"http://name.csiicloud.com:7001/destroy/download/destroy-1.1.0.tgz"},"_npmUser":{"name":"dougwilson","email":"doug@somethingdoug.com"},"directories":{},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/destroy_1.1.0_1643137047375_0.3416969550105049"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-01-25T19:07:33.995Z","publish_time":1643137047526,"_cnpm_publish_time":1643137047526},"1.0.4":{"name":"destroy","description":"destroy a stream if possible","version":"1.0.4","author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"contributors":[{"name":"Douglas Christopher Wilson","email":"doug@somethingdoug.com"}],"license":"MIT","repository":{"type":"git","url":"https://github.com/stream-utils/destroy"},"devDependencies":{"istanbul":"0.4.2","mocha":"2.3.4"},"scripts":{"test":"mocha --reporter spec","test-cov":"istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot","test-travis":"istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter dot"},"files":["index.js","LICENSE"],"keywords":["stream","streams","destroy","cleanup","leak","fd"],"gitHead":"86edea01456f5fa1027f6a47250c34c713cbcc3b","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"homepage":"https://github.com/stream-utils/destroy","_id":"destroy@1.0.4","_shasum":"978857442c44749e4206613e37946205826abd80","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"dougwilson","email":"doug@somethingdoug.com"},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"dist":{"shasum":"978857442c44749e4206613e37946205826abd80","size":2331,"noattachment":false,"key":"/destroy/-/destroy-1.0.4.tgz","tarball":"http://name.csiicloud.com:7001/destroy/download/destroy-1.0.4.tgz"},"directories":{},"publish_time":1452914045899,"_cnpm_publish_time":1452914045899,"_hasShrinkwrap":false},"1.0.3":{"name":"destroy","description":"destroy a stream if possible","version":"1.0.3","author":{"name":"Jonathan Ong","email":"me@jongleberry.com","url":"http://jongleberry.com"},"contributors":[{"name":"Douglas Christopher Wilson","email":"doug@somethingdoug.com"}],"license":"MIT","repository":{"type":"git","url":"https://github.com/stream-utils/destroy"},"devDependencies":{"istanbul":"0","mocha":"1"},"scripts":{"test":"mocha --reporter spec","test-cov":"istanbul cover node_modules/mocha/bin/_mocha -- --reporter dot","test-travis":"istanbul cover node_modules/mocha/bin/_mocha --report lcovonly -- --reporter dot"},"files":["index.js"],"keywords":["stream","streams","destroy","cleanup","leak","fd"],"gitHead":"50af95ece4a70202f9301bc3edc8f9fdbbad0f26","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"homepage":"https://github.com/stream-utils/destroy","_id":"destroy@1.0.3","_shasum":"b433b4724e71fd8551d9885174851c5fc377e2c9","_from":".","_npmVersion":"1.4.21","_npmUser":{"name":"jongleberry","email":"jonathanrichardong@gmail.com"},"maintainers":[{"name":"dougwilson","email":""},{"name":"jongleberry","email":""}],"dist":{"shasum":"b433b4724e71fd8551d9885174851c5fc377e2c9","size":1229,"noattachment":false,"key":"/destroy/-/destroy-1.0.3.tgz","tarball":"http://name.csiicloud.com:7001/destroy/download/destroy-1.0.3.tgz"},"directories":{},"publish_time":1408084206962,"_cnpm_publish_time":1408084206962,"_hasShrinkwrap":false}},"readme":"# destroy\n\n[![NPM version][npm-image]][npm-url]\n[![Build Status][github-actions-ci-image]][github-actions-ci-url]\n[![Test coverage][coveralls-image]][coveralls-url]\n[![License][license-image]][license-url]\n[![Downloads][downloads-image]][downloads-url]\n\nDestroy a stream.\n\nThis module is meant to ensure a stream gets destroyed, handling different APIs\nand Node.js bugs.\n\n## API\n\n```js\nvar destroy = require('destroy')\n```\n\n### destroy(stream [, suppress])\n\nDestroy the given stream, and optionally suppress any future `error` events.\n\nIn most cases, this is identical to a simple `stream.destroy()` call. The rules\nare as follows for a given stream:\n\n  1. If the `stream` is an instance of `ReadStream`, then call `stream.destroy()`\n     and add a listener to the `open` event to call `stream.close()` if it is\n     fired. This is for a Node.js bug that will leak a file descriptor if\n     `.destroy()` is called before `open`.\n  2. If the `stream` is an instance of a zlib stream, then call `stream.destroy()`\n     and close the underlying zlib handle if open, otherwise call `stream.close()`.\n     This is for consistency across Node.js versions and a Node.js bug that will\n     leak a native zlib handle.\n  3. If the `stream` is not an instance of `Stream`, then nothing happens.\n  4. If the `stream` has a `.destroy()` method, then call it.\n\nThe function returns the `stream` passed in as the argument.\n\n## Example\n\n```js\nvar destroy = require('destroy')\n\nvar fs = require('fs')\nvar stream = fs.createReadStream('package.json')\n\n// ... and later\ndestroy(stream)\n```\n\n[npm-image]: https://img.shields.io/npm/v/destroy.svg?style=flat-square\n[npm-url]: https://npmjs.org/package/destroy\n[github-tag]: http://img.shields.io/github/tag/stream-utils/destroy.svg?style=flat-square\n[github-url]: https://github.com/stream-utils/destroy/tags\n[coveralls-image]: https://img.shields.io/coveralls/stream-utils/destroy.svg?style=flat-square\n[coveralls-url]: https://coveralls.io/r/stream-utils/destroy?branch=master\n[license-image]: http://img.shields.io/npm/l/destroy.svg?style=flat-square\n[license-url]: LICENSE.md\n[downloads-image]: http://img.shields.io/npm/dm/destroy.svg?style=flat-square\n[downloads-url]: https://npmjs.org/package/destroy\n[github-actions-ci-image]: https://img.shields.io/github/workflow/status/stream-utils/destroy/ci/master?label=ci&style=flat-square\n[github-actions-ci-url]: https://github.com/stream-utils/destroy/actions/workflows/ci.yml\n","_attachments":{},"homepage":"https://github.com/stream-utils/destroy#readme","bugs":{"url":"https://github.com/stream-utils/destroy/issues"},"license":"MIT"}