{"_id":"minipass-flush","_rev":"59405","name":"minipass-flush","description":"A Minipass stream that calls a flush function before emitting 'end'","dist-tags":{"latest":"1.0.5"},"maintainers":[{"name":"isaacs","email":""}],"time":{"modified":"2022-10-18T09:48:10.000Z","created":"2019-09-15T23:29:09.908Z","1.0.5":"2019-09-30T20:54:48.902Z","1.0.4":"2019-09-18T16:08:24.970Z","1.0.3":"2019-09-17T01:25:55.922Z","1.0.2":"2019-09-16T22:20:38.803Z","1.0.1":"2019-09-15T23:33:13.881Z","1.0.0":"2019-09-15T23:29:09.908Z"},"users":{},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"repository":{"type":"git","url":"git+https://github.com/isaacs/minipass-flush.git"},"versions":{"1.0.5":{"name":"minipass-flush","version":"1.0.5","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.9"},"dependencies":{"minipass":"^3.0.0"},"main":"index.js","repository":{"type":"git","url":"git+https://github.com/isaacs/minipass-flush.git"},"keywords":["minipass","flush","stream"],"engines":{"node":">= 8"},"gitHead":"9625266c18ca9d14bb13f85dfcdf8cb67763b14e","bugs":{"url":"https://github.com/isaacs/minipass-flush/issues"},"homepage":"https://github.com/isaacs/minipass-flush#readme","_id":"minipass-flush@1.0.5","_nodeVersion":"12.8.1","_npmVersion":"6.12.0-next.0","dist":{"shasum":"82e7135d7e89a50ffe64610a787953c4c4cbb373","size":1972,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.5.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.5.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.5_1569876888688_0.9645134726115252"},"_hasShrinkwrap":false,"publish_time":1569876888902,"_cnpm_publish_time":1569876888902},"1.0.4":{"name":"minipass-flush","version":"1.0.4","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.4"},"dependencies":{"minipass":"^2.6.2"},"main":"index.js","repository":{"type":"git","url":"git+https://github.com/isaacs/minipass-flush.git"},"keywords":["minipass","flush","stream"],"gitHead":"280c5c62a489e130a82b38353608522b5468f759","bugs":{"url":"https://github.com/isaacs/minipass-flush/issues"},"homepage":"https://github.com/isaacs/minipass-flush#readme","_id":"minipass-flush@1.0.4","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"shasum":"e43261649da7ff9b9db529edc635b8f835411759","size":1953,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.4.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.4.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.4_1568822904729_0.3900350616791064"},"_hasShrinkwrap":false,"publish_time":1568822904970,"_cnpm_publish_time":1568822904970},"1.0.3":{"name":"minipass-flush","version":"1.0.3","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.4"},"dependencies":{"minipass":"^2.6.2"},"gitHead":"cb96dd6cfb8603a7d843a8693bc2fd65ae67054d","_id":"minipass-flush@1.0.3","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"shasum":"3089d92b79ab157f7a39b63bc20826bc7d5bab2c","size":1885,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.3.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.3.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.3_1568683555793_0.23236597573625106"},"_hasShrinkwrap":false,"publish_time":1568683555922,"_cnpm_publish_time":1568683555922},"1.0.2":{"name":"minipass-flush","version":"1.0.2","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.4"},"dependencies":{"minipass":"^2.6.2"},"gitHead":"1fc00e064c1e43f1508141a2d3e7979fb057855f","_id":"minipass-flush@1.0.2","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"shasum":"9160f1b98124c151f7b3565a493660ed7c1868e6","size":1879,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.2.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.2.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.2_1568672438692_0.1324160550195963"},"_hasShrinkwrap":false,"publish_time":1568672438803,"_cnpm_publish_time":1568672438803},"1.0.1":{"name":"minipass-flush","version":"1.0.1","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.4"},"dependencies":{"minipass":"^2.5.1"},"gitHead":"d6128f8833ced17233628bdbc597031ffc1a6f99","_id":"minipass-flush@1.0.1","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"shasum":"5137a873b2c60b9eb52cf1d630fa22d98c040064","size":1832,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.1.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.1.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.1_1568590393736_0.9540662901907238"},"_hasShrinkwrap":false,"publish_time":1568590393881,"_cnpm_publish_time":1568590393881},"1.0.0":{"name":"minipass-flush","version":"1.0.0","description":"A Minipass stream that calls a flush function before emitting 'end'","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://izs.me"},"license":"ISC","scripts":{"test":"tap","snap":"tap","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"check-coverage":true},"devDependencies":{"tap":"^14.6.4"},"dependencies":{"minipass":"^2.5.1"},"gitHead":"4c21526d3ace110d0f934e92d20ecc900496e259","_id":"minipass-flush@1.0.0","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"shasum":"b5cfb95600f009a2c62f03fc769f59e0ea1d38ff","size":1830,"noattachment":false,"key":"/minipass-flush/-/minipass-flush-1.0.0.tgz","tarball":"http://name.csiicloud.com:7001/minipass-flush/download/minipass-flush-1.0.0.tgz"},"maintainers":[{"name":"isaacs","email":""}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/minipass-flush_1.0.0_1568590149766_0.8079714738932278"},"_hasShrinkwrap":false,"publish_time":1568590149908,"_cnpm_publish_time":1568590149908}},"readme":"# minipass-flush\n\nA Minipass stream that calls a flush function before emitting 'end'\n\n## USAGE\n\n```js\nconst Flush = require('minipass-flush')\ncons f = new Flush({\n  flush (cb) {\n    // call the cb when done, or return a promise\n    // the 'end' event will wait for it, along with\n    // close, finish, and prefinish.\n    // call the cb with an error, or return a rejecting\n    // promise to emit 'error' instead of doing the 'end'\n    return rerouteAllEncryptions().then(() => clearAllChannels())\n  },\n  // all other minipass options accepted as well\n})\n\nsomeDataSource.pipe(f).on('end', () => {\n  // proper flushing has been accomplished\n})\n\n// Or as a subclass implementing a 'flush' method:\nclass MyFlush extends Flush {\n  flush (cb) {\n    // old fashioned callback style!\n    rerouteAllEncryptions(er => {\n      if (er)\n        return cb(er)\n      clearAllChannels(er => {\n        if (er)\n          cb(er)\n        cb()\n      })\n    })\n  }\n}\n```\n\nThat's about it.\n\nIf your `flush` method doesn't have to do anything asynchronous, then it's\nbetter to call the callback right away in this tick, rather than returning\n`Promise.resolve()`, so that the `end` event can happen as soon as\npossible.\n","_attachments":{},"homepage":"https://github.com/isaacs/minipass-flush#readme","bugs":{"url":"https://github.com/isaacs/minipass-flush/issues"},"license":"ISC"}