{"_id":"bufferstream","_rev":"115-b1837168d8efb03b73a659170a3f6ec8","name":"bufferstream","description":"painless stream buffering and cutting","dist-tags":{"latest":"0.6.2"},"versions":{"0.0.2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.0.2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"node-waf configure","install":"node-waf build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.0.2","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"4247e2d10d6288a63a694a1a9cd6a1589ded5137","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.38-2-amd64":{"shasum":"52d72294884ca6f3d514469e78c95333da293aa0","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.0.2-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.38-2-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.0.2.tgz","integrity":"sha512-ZbufjuWsC1MqmxmCUNp/BhLhQdyjNdopkqUZbCsuegEzErfAobe4MZJoCb3X37CGOciCAbyxI+JbfxUOFxkFgw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBWYKvmyv4saFE9A74y0j3WFYQcJrQc8TCWpyX9DlEnJAiBWY3CX+rVRHtQtBNdHEKU75tFfoWEFFb7iK4+uFQnYeg=="}]},"directories":{}},"0.0.3":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.0.3","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"node-waf configure build","install":"node-waf build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.0.3","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"ecb7438ba50ba07a2bbdc038756a998c1b163677","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.38-2-amd64":{"shasum":"c78f022bd5b8874860420baafa8f7b8e97700691","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.0.3-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.38-2-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.0.3.tgz","integrity":"sha512-dfAyC+yHZWw8PzLBfFZlSgd1TKm7fyEJzubqRPwrCD0QJdj7vs03EbokEFTWCvRAPGV39M5p/bnppxJ7tzRxQw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGBKXFvNEulGMF71DXD3zs5Mq0bLFWL6M/nVMl8CcH6MAiABV+4nb+50snn9KCLRFvcb524LnXWneZVhfuQA+/kOHA=="}]},"directories":{}},"0.1.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"node-waf configure","install":"node-waf build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.0","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"1960dd9c5ca0334c2c23419add9012e9f2c65af8","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.0.tgz","integrity":"sha512-cHt/62m3BC2jrM9bkyV+dy1KR2h8iyCWdD/QkvyDCP8M5/Xs83N734JIVcnIJmmjLhsXRZhZwDzERqoxC6I80A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAaOIxOyK89NyT9cVtOuYV17BFoInYqKbulDKXMBXOhrAiAVUev5ZWosptRIljVjHecWxpQSz57NGRW2TOZ2abWctg=="}]},"directories":{}},"0.1.1":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.1","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.1","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"e75a4ee9ff46abd9542e295f0ce5fe8f7fb87d05","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"bbea932ebcc14d65982307d20aeac6f520e5b0a8","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.1-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.1.tgz","integrity":"sha512-re9p+bimX00Z6Ebur5mQ4+FTfM/d9xoV/1rNk//lx0x+U8RBLw0YrnFdGEa/XXigx6/uFsIJZ54YqIeg1wc3ew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICT5Pjv9YmMc4B3jw/e4zYaSZEihd0b5FqfT5W+zI/1sAiEAwzGolnU+uOrMmQK8TfcS0390cUwtyVT+vS2FHU8ntIc="}]},"directories":{}},"0.1.2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"347cd6af0514cab5df2c1cf2ebd06d3b4ae539ac","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"8ab968f124cd456bd8e24d5b7b4a86fd7cd239d8","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2.tgz","integrity":"sha512-Swtg757Cjj32633cU2lmneFIcaWkVUavRvBjqaxWYtSPgOHcVl3vKdkkd9IQrlzzCW4s4+KN24d2O6uyulJfsg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbZSGNgC7Ww+EYaf/nWHMEbnFmgBpcN73dZhoFkh/EwQIhAKcCgwr/VMxFJ58VO23In8ZbUL1bBHMHOhCAzHRSgpvS"}]},"directories":{}},"0.1.2-1":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-1","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"postinstall":"node-waf configure build","update":"node-waf build","preinstall":"node-waf clean || true; node-waf configure build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-1","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"ccc5bc4f2847d779451a8d8a217c35924579779a","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-1.tgz","integrity":"sha512-Rm9tkGSiy5Fzkklwjm8Kzoh9KKtKXB/iT9BhoVfZM0dyb9fVjX8s8j1qecReHIi6yiTgQpTKcoUXn0yZI/T2zg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEhl8FLbdaYGOuhZJjp27a2eoF7hJkrAv/Cur9IxHw9TAiBTQTfbUps6nFaapI+7fIDkZspLZb2otq0FFq5w4SO9iQ=="}]},"directories":{}},"0.1.2-2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-2","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"d77b7e26b9b26f4fbe5a3e0f3cf992ab6ecb5d40","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"db0c830aa050b5daa73be660e91f6b879f0972d7","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-2-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-2.tgz","integrity":"sha512-L2aK0cmFSDwRhN0D+qJwblydvh51i+9vbhudmFWRviEGvGidTFk4mccWlf0+/k14H6bA5/8/rwIqWJZI6rp64w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCsz5iTcjXZPBgwf4PHrP1qLCsIj4fNtyM8CtG0ShrsjgIhAL24sBSvMTolMzEH4kAqFKJdr2J8lPXdC9mr4Act0Fsl"}]},"directories":{}},"0.1.2-3":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-3","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","postinstall":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-3","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"706dd63589e24f7887aefc37ea551d726fd0c2c6","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"928101f9f18f594ce902ade94f5ee70bf27ea615","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-3-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-3.tgz","integrity":"sha512-dibP09+rC0IViE0fvXCDsiIlQbR+nsQ61l6OoV5cbFdYhGCpUhEDO97yRHw4zoagXl634yFmu18HvLIK8Fm/bA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGejyddXfD8vmR/AB50fLPn6d1srt6fJ7yih9zYimVDtAiEA5h01Eyn9BJuITTxf+wj8uqSyuNpyp6DGwk+vWGgKH/E="}]},"directories":{}},"0.1.2-4":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-4","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-4","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"6f28408b9aefdf09a2e7274727291c677ebc0a94","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"954aba896fd1e1f3c93c37e9189c8176f686fc59","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-4-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-4.tgz","integrity":"sha512-UedDtZ22759d6HA6lu1en/X8JojhqXTl0H/zMcuTL7gfOZ9al35Q/uH5PbGguhQu9tglrlz9YIUGnpUB+84yHg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID/3ePYJxaKrI972xUrbqujeKKJ2q1aZvrMnHP+NxvnAAiEAlEWc4p7EINN4tgeGjAxxl4a1iTBDHW0UHnt0aJLrVFQ="}]},"directories":{}},"0.1.2-5":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-5","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"config":{"force":true},"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-5","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"0e961477a8372205875c5ad4007593fd2de3fa9f","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"3b2c6b0135f9da24614b27fdd5419b3a526bd861","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-5-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-5.tgz","integrity":"sha512-jFTmZ3/WrEGgW7sEqAA/Bk5O9JNu2IbR3rAMS2wSv/d80k3S1xqHWZa0CgvO91ZY3UpnXZXTRo2rWEbbOyGFJQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGnUtuW/z026nTyjZvySDyYVS4sNVSYRsiAX9N6zkhgXAiEAm9MOYXgKTOLbVGEbNKK8CUMxV7S3M3fQDYhOc1hQ4+c="}]},"directories":{}},"0.1.2-6":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.2-6","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","postinstall":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.2-6","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"36a87e1c07846f6786c543e6c4bc36bed1bb1fdf","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"3f2c7f4f5593d89e97efef95632ea1c9153ea04f","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-6-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.2-6.tgz","integrity":"sha512-D39afSDYGzoiWaNL0ovtSrQ8mLxqu3TXf/eDt//IqlDwep4KpE2LyFuecbJwRPUZS5rrbZRkyiPqkMdYvmtCdQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYAoSjvquN79LIiY3CRCu+yZHH+DB62n9lq564YorSUQIgXSocYIPtUhipSVy3BjbZwJOU+sPwmcopWsK4ArIy1Jg="}]},"directories":{}},"0.1.3":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.3","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"devDependencies":{},"_id":"bufferstream@0.1.3","_engineSupported":true,"_npmVersion":"1.0.6","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"df1546fd70dd40ec0e23b8ddfcbe839ca42c4f9e","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"1450ce53b165336d60c1b44a896bd454f5beaf89","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.3-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.3.tgz","integrity":"sha512-/DKqcXxIdOxMHJocERVf1DxAVs6b3sMToZ4xWGPGe7N7jggjOS38fhSFdHpW4KwerchmusFw8Y+jeg8W+FsDgg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7ONCRtYKMOyj7a+jNAR51v/Rh8w+Y8zEAci6jZ2kZ8QIgSYE3wUe0Usd03mWMVYlnVQVf/kQTJEeFISHxrLDKAXU="}]},"directories":{}},"0.1.4":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.4","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"_id":"bufferstream@0.1.4","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.8","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"1ee5ea5eae1c5c2ef083e4f3e09d417b5a3a5827","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"dc51d64f288f59ddee79791b9b256cf1da937d0c","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.4-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.4.tgz","integrity":"sha512-eTgYM5q+T+6foI4P/rSjYdAFbsYFm2W/Psvkz4QLDJM9IkyGVXNBT7RTaYXvqJeWPSp6RVE5t2Zp3TTtld7x/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFSo5mQGXUsf7V1zZ1FnJD7XPqFpblHtFQmc2bBNdHd8AiAXriuoFU7DWVSiaT6YtjDhCgRRp6F0vJtQLICMi+XYyQ=="}]},"directories":{}},"0.1.5":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.5","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"_id":"bufferstream@0.1.5","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.8","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"184c7fd10122f5f8acb9f58ea789e5f0a5079187","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"d329e4b30be09273c84b9deb6d88998a5e50148d","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.5-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.5.tgz","integrity":"sha512-oP9IPIlAHw7lyEhlGak4HnBiwebaa8IzgD4xQJGSuFHoZbp07wutt2T0TlBGGgDk1I8iRgDvKAWzajB62nbGeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAiRHBsGcvOeTNircd9tgmkANSlY2+TI+03AZuk2chj+AiBrCdtxtdUlb2rM76mlq+fV8YJSZVjapyhWCypAuc+xXw=="}]},"directories":{}},"0.1.6":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.1.6","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"_id":"bufferstream@0.1.6","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.8","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"a643888f1a830558f48278e7d4a8f0a5e2ea4931","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"9a3078065236c27ee0798dbbba77cd151b0bcb77","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.1.6-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.1.6.tgz","integrity":"sha512-AiBHCxeoEp2RpURJU1gOvS1om+ZWGKZAnuUXVT8GmJ9F9r7W/SpHyf6rBrvab0IW8SpkWuNzgD1uYCJI0wb8Rg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEL5p7IdBilfadytdb96l6JoZJ/31tAZ/ViAnewEWygwIhAJxXzrcl8xZ3zUDfOsjggHpQVCSzjvO6Pdt3PlBHBRh+"}]},"directories":{}},"0.2.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.2.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"_id":"bufferstream@0.2.0","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.8","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"38b0e7d30d37d25a4cc58567bb6cba66ec483591","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"ebdb6860594c7c2e97d983a7a7eb44d38ad40b80","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.2.0-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.2.0.tgz","integrity":"sha512-7IJTKSVbncX7ouMPdxtQ47sMgmJApduXVo/Gr6axVzd6y9sCDeLK5Z6aLeewXuT+NR/XZ+Odbe+esjbRsFLszQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDzOvHUiE/bs8i6twMhezIWBxt+AruD0P6ByEvLCgBIJAiAEex7WONzePFxPiaowGwe73pUlIFO5jvNvkWYmKKA8Kw=="}]},"directories":{}},"0.3.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.3.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.1"},"_id":"bufferstream@0.3.0","devDependencies":{},"_engineSupported":true,"_npmVersion":"1.0.8","_nodeVersion":"v0.4.7","_defaultsLoaded":true,"dist":{"shasum":"8af55a44783918767716a586a3d151a86489a418","bin":{"0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64":{"shasum":"c1678f3ff7622bfad6ffa45bd524473b33d4e14d","tarball":"http://registry.npmjs.org/bufferstream/-/bufferstream-0.3.0-0.4-ares1.7.4-ev4.4-openssl1.0.0d-v83.1.8.10-linux-2.6.39-1-amd64.tgz"}},"tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.3.0.tgz","integrity":"sha512-8aL4CD7lUIKIFuOC0hZKNCr5O6Lrg1ZMcA7DRG1fjktSHfN7GdHIgvh//0H4GaDeSCGi2N4IFxbuP5Ag2hwDyg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICtxtOvmMujIAZkAL2ZG/lQ7m6KOdjWHX1ZiXGkURT2BAiEAibX3jK+9gTmAMgA/2Bv0ABtWdwEBbLfKtVsDIfNDpKk="}]},"directories":{}},"0.4.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.0","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"3a2394dc0d7f4db8ea936af7f5dbc421141aea4e","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.0.tgz","integrity":"sha512-MBQrJH5V/rhfrhvSlrLWdrBXeEZHpyVRVo6F58DgetpV5sPYR16UXuwPb8bta3a0rETevLCDGj2kCqdtzY/odw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkfPpwCwFuwDYwwh6dDGRq4NIPLwqdHBW6XvH96VOFXwIgPK+mB8fi1MILoNrVYx+BufcsQOMkYw2YD2J2isy4LRg="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.1":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.1","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.1","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"1e5688e87416d373c678318fa98f7fef435908bd","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.1.tgz","integrity":"sha512-YBkOkB59v4+FO+8RKtcw9oePJoOgCwUZx5j+AV7m2qmCu87Q8BfO0qbLycSBR5biOYFaf1c7DlstRnKmpJUMRw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDc/EH5K3h+6MOvBJ5CTQPlrma1YA9HppQmLtVJpZaecwIgVkwdQZHe5Kz9a28zjnjcG2BbS44Unrt8F/SljbajWSE="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.2","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"06542b70ca5b7508d5b35602b8f94ba2750ce7a1","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.2.tgz","integrity":"sha512-3JU37FGf8AlBhTE3kmyarvwaeqgiPsMxNnQeG1e/jQ1/8xK+2hyGruzv5Kz8nQSJofXHfhHcN1hrINEjntt4iw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICK+mikyEk1xdOEpLkiO+pAoNQD+wIpdd47iSgPHZcSzAiEAocYm2TWZZIfmH+cO25NAXAXWpdEg2f4iRRzci/YspD8="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.3":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.3","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.3","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"66e4c9a7e8a7d4ce4d5e2bba03f87c667e163252","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.3.tgz","integrity":"sha512-cf8QxLHZTiyMRef7e9KW0MnAvao4COavgu7NOXAK+t2T086g9ajF7oeWYCqkcfvow9/m+ZDy7Ak+8adjr3mI+Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8V/lA0OXfJhXo07CQSCY07t6GOn3YF7J0EofE3QN4ugIhAIDv+V8uacP3Tzq33WPiMFkgXCDSE44W/f2slHYjzuu8"}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.4":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.4","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.4","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"db4eeabb40881dc92be4ab45382c8d5c3ec9bf65","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.4.tgz","integrity":"sha512-OUUz8zbBvUOBa4DhqQvCFFZKwS59jFVWFeBdu5Dc3r5aSq+X478i4t/W4fM17P2JElh/w8N5w9Gxo1czakeiqg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAFBxZAdEQZUYwQ5x36wlkrHv2G3o5CyAUkh/cuWyDHYAiEAvokJzn9SC4k8Rg90+QwZdAszo0g7lF7ploRmgyD0Khc="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.5":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.5","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.5","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"f51f0d514693585835e20f01c8f5f9d25f48bf0e","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.5.tgz","integrity":"sha512-Q0asjT0uS33wgQ8UkJ7ohb18iCYskqt6dhWjAToHtUOWAiIysKpN+x3c4klTcZrIQq89AA8RgOOv4hm1U3OXjA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDMOOPdVQDDbIZaMMjWmJ//74tv3RUrNfz/RZU3YcHkmAiBQIQLe8wjkyWdf5JKcOb1GrsCYF61RzXssxGm+iX8noQ=="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.6":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.6","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.6","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"ef889c61a5e43d32166c0b184c959d0617bbd0ff","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.6.tgz","integrity":"sha512-rYXlbl2KOm4jyUnQWztUpWQDM2vZo2ONUVw/LdIa1sqlwqNbxAt0ikTrf9XY1IOtWfaPoQz/fkgfUD0Yo/Ia1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA4YTE1sxGyk9vIVy91xbXeVNwkh8NhNZ8IAsaL3klguAiBNU0PWCy7oRl4lz+8QTnjGyq4o+E8BoUZtRNuXb1LA0Q=="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.7":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.7","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_id":"bufferstream@0.4.7","_engineSupported":true,"_npmVersion":"1.0.11","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"d5451c527af0ad471e380afea1f0502226bf6333","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.7.tgz","integrity":"sha512-iQgfrk+jEfBlEsW7J/QKE+S7cdH75y8+5uM3N93GhSnBsxSzgScwPK0wJEwped7ZGEOwoBUfyXlZiSy7Avctjg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB2NB+y5GasljbnfRxPSOTmhCYT+JBtbCTWGuJubuaIDAiAu5FqTvlvFr8AkV4fKYM+HilrQXBPik4alrVx2ixdI/A=="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.8":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.8","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.4.8","_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"59fcea1329e6aeeb7fc6d2c283d035974c661a47","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.8.tgz","integrity":"sha512-Kgp0HRLADcmo8EzNM2lAAjDMuT6lsVjxBbJ54C15v8dPWyRdQ+zOx7JVOkfSc80CwDjnuw4rlnTkQCS4uySscA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDBP7qRKje7dIPXoibQYh40332tzHSy9hUJYWimyS2hYAiEAonj1SUwrM11TEhh1lUmZeIHjXOgd1RRRFbGGy9E/Alc="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.9":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.9","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":"0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"./benchmark","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.4.9","_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"2056d7add1ffeed642f3cb0899a5b71952d54620","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.9.tgz","integrity":"sha512-PjiFLWpuYapapOyU4lpjMAEsBrt6uxn1hH5TvA+o1bkCA1Yp0oQQ95DXpkLVsPFdn97xtkZdJK6XraySpdP4iQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUtWZmpZDOZviXMPZKQhy+ro4cTnuB9KFk2bE1NqJGhAIge51fwEEMCv8c3bwVglRQs5I2ww11QUzYN1vy5Ilsumo="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.4.10":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.4.10","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"node-waf build && nodeunit test","preinstall":"#preinstall DO NOTHING","install":"node-waf configure build","update":"node-waf build"},"dependencies":{"buffertools":">= 1.0.3","coffee-script":">= 1.1.2"},"devDependencies":{"nodeunit":">= 0.6.4","cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.4.10","_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"7eb6b686566591cfd2e4b4921aa8715728ec6c09","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.4.10.tgz","integrity":"sha512-we42JO9sK+3DSl3HvMyrgE9owNycoaNbBZ8kqhoMkpo8SHWvubjTfUccs9srEk+FwTEszNcfRhbThB5DQizkwA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSobo1oI2DJoUhS3MvYkVBzIjWTE5tMJB2BfuTKz3bEwIhAIHzjCjmeHONX5KqSljEsWjs4HRQk8Kpxe4mftwIc5uX"}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.5.0-pre":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.5.0-pre","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"buffertools":">= 1.0.3","valvestream":">= 0.0.0"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.5.0-pre","_engineSupported":true,"_npmVersion":"1.0.106","_nodeVersion":"v0.4.12","_defaultsLoaded":true,"dist":{"shasum":"d190f63d142f1f32dea87af1afa770f3c8e34003","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.5.0-pre.tgz","integrity":"sha512-Cu4Y0DoCST0N3qOU5+uXKdf2VpAf/qhAMilJu1t3HBgUBrNeGAc2KjP+Qe3x8DpwVnACIHn1vJRRhg293opc4w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBZ+U2mP2Fq9vPh+rt0N0GKxisefvYcVPArYOOqcgKzAAiBR9yh3iEMVV+wgGHY/iXJo0edCU9+07Uifx0EWzxawig=="}]},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.5.0-pre2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.5.0-pre2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"buffertools":">= 1.0.3","valvestream":">= 0.0.1"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.5.0-pre2","_engineSupported":true,"_npmVersion":"1.1.0-beta-10","_nodeVersion":"v0.6.7","_defaultsLoaded":true,"dist":{"shasum":"8ad9a58ca9e08729e2cef7d299b25a8436eb7cbb","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.5.0-pre2.tgz","integrity":"sha512-3e+9Zet8/S3oGdw4gD8L1Bewih28tTc9AB9GdhzVElm5vrotsiltBw+D0NRxxsDC9xjbG/lbpTyzNPErJkM55g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzRCg+0En/CQK7CyKopFmblYB1VvkyaQv0g/Mu4hB8HgIhAMJqwS/82DVcRTYuPJ8fqit11cjy/O0M6h0wCoAcfSv4"}]},"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.5.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.5.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"buffertools":">= 1.0.3"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.5.0","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"14f3481074fbf176f4959b3a50d0d475fda41a3f","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.5.0.tgz","integrity":"sha512-k//Yce39wZbnVZrR1/kmUbLaBo6DDEyBqnQhKRaA77uPOnsPQz28qcv79UHorEMMj4ddCdIsE/cvP0nzyFDG9w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYj6KINJVChnh5q0TVRs3TXjCyujhwgrpSHpvaajZShgIhAKnELH/2JB8W3+7PgPtG8zwMNkIaNifV1LvVSZmeZwh8"}]},"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.5.1":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.5.1","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"buffertools":">= 1.0.3"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"_id":"bufferstream@0.5.1","optionalDependencies":{},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.6.11","_defaultsLoaded":true,"dist":{"shasum":"6208e711a2439ed306d1ae3d2ae9471a880390bf","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.5.1.tgz","integrity":"sha512-fArddB6GkamQHPWG/alPJQJdZ5ggBQIyxjxU6AqhBAjg4GlSTjFHbYBdYe3055aX09Vlcf/pKm0FiCL3JMe/4A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFXFlqutEgO8YcKR9SnRaw81yWvF7WjnQQzMF9gbRiLiAiEAncjFr9Pa+8zDzpkfZkpnoMAvJZWW8A8O+CADY7wciKM="}]},"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `blocking` if true and the source is a child_process the stream will block the entire process (timeouts wont work anymore, but splitting and listening on data still works, because they work sync)\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"directories":{}},"0.5.2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.5.2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"buffertools":">= 1.0.3"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"licenses":[{"type":"MIT","url":"http://github.com/dodo/node-bufferstream/raw/master/LICENSE"}],"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `blocking` if true and the source is a child_process the stream will block the entire process (timeouts wont work anymore, but splitting and listening on data still works, because they work sync)\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","readmeFilename":"README.md","_id":"bufferstream@0.5.2","dist":{"shasum":"599c9224e6690c42a5cd5dea96511bf09d0094fc","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.5.2.tgz","integrity":"sha512-NIafkO22YfR2v91hcPTNLn0VMdaWUpLYqXegrP3Noy0MV/XuNJJh6Xhq4Zs5vrcHuvKcmlsYvJeMMOgXkm2ZpQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCW+y5J2W1x9UDKdpm7FNJinpWHIfC8WRTlLRktSHY5NQIhAPbeud7qwCi1gwTT55JHI0KfAN/XKJCYCf1qaasuBTaF"}]},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}]},"0.6.0":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.6.0","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"bufferjs":">= 2.0.0"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"licenses":[{"type":"MIT","url":"http://github.com/dodo/node-bufferstream/raw/master/LICENSE"}],"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `blocking` if true and the source is a child_process the stream will block the entire process (timeouts wont work anymore, but splitting and listening on data still works, because they work sync)\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## note\n\nTo improve platform independence bufferstream is using `bufferjs` instead of `buffertools` since version `0.6.0`.\nJust run `npm install buffertools` to use their implementation of `Buffer.indexOf` which is sligthly faster than `bufferjs`'s version.\nif you're forced to use the javascript-only version of `Buffer.indexOf` (like on windows) you can disable the warning by:\n```javascript\nrequire('bufferstream').fn.warn = false\n```\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/dodo/node-bufferstream/issues"},"_id":"bufferstream@0.6.0","dist":{"shasum":"7a4c10f54a60d41660337d6f82d14df8fd5aadfe","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.6.0.tgz","integrity":"sha512-BLL9PiKtYJ1rf/f06d06uj+mBjP/Cpdm3jeHW11vpLcO8VJJ0solO7RaOT8WmpijcEH0W4Owzcxb3FoVgZiTwA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAoZ5iN+9wfjtYmS4q2kakmPtmMFCXUKMN8+euN39pCvAiEA6bXcX81j1GDX8/12dfEDbMlfd5m2wvab7EdvUzPU4BQ="}]},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}]},"0.6.1":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.6.1","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"bufferjs":">= 2.0.0","buffertools":">= 1.0.3"},"optionalDependencies":{"buffertools":">= 1.0.3"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"licenses":[{"type":"MIT","url":"http://github.com/dodo/node-bufferstream/raw/master/LICENSE"}],"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `blocking` if true and the source is a child_process the stream will block the entire process (timeouts wont work anymore, but splitting and listening on data still works, because they work sync)\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## note\n\nTo improve platform independence bufferstream is using `bufferjs` instead of `buffertools` since version `0.6.0`.\nJust run `npm install buffertools` to use their implementation of `Buffer.indexOf` which is sligthly faster than `bufferjs`'s version.\nif you're forced to use the javascript-only version of `Buffer.indexOf` (like on windows) you can disable the warning by:\n```javascript\nrequire('bufferstream').fn.warn = false\n```\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/dodo/node-bufferstream/issues"},"_id":"bufferstream@0.6.1","dist":{"shasum":"49acb07a2dc5446f5b910acf2f3829dfe2c69954","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.6.1.tgz","integrity":"sha512-VpdjyL8v33mUiCldQ4X6Bj3ksVNL1K+1RQ/XnGzBFF7ysp3E1wP3C5Mjiqv9Mq8RWedG7QKRYroDoYtqGO9W8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJ2NBXEPP6R+tqOWW3DlosfNYQ7/a6n19SySkGH0x3vgIhAM0zItVE/e4xpmFEbO4i+lxUN96y4HNPCBCcu5z8TxWO"}]},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}]},"0.6.2":{"name":"bufferstream","description":"painless stream buffering and cutting","version":"0.6.2","homepage":"https://github.com/dodo/node-bufferstream","author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"main":"bufferstream.js","engines":{"node":">= 0.4.x"},"keywords":["buffer","buffers","stream","streams"],"scripts":{"test":"cake build && nodeunit test","prepublish":"cake build"},"dependencies":{"bufferjs":">= 2.0.0","buffertools":">= 1.0.3"},"optionalDependencies":{"buffertools":">= 1.0.3"},"devDependencies":{"nodeunit":">= 0.5.4","muffin":">= 0.2.6","coffee-script":">= 1.1.2","cli":">= 0.3.7","express":">= 2.4.5"},"licenses":[{"type":"MIT","url":"http://github.com/dodo/node-bufferstream/raw/master/LICENSE"}],"readme":"# BufferStream\n\npainless stream buffering, cutting and piping.\n\n## install\n\n    npm install bufferstream\n\n## api\n\nBufferStream is a full node.js [Stream](http://nodejs.org/docs/v0.4.7/api/streams.html) so it has apis of both [Writeable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#writable_Stream) and [Readable Stream](http://nodejs.org/docs/v0.4.7/api/streams.html#readable_Stream).\n\n### BufferStream\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream([{encoding:'utf8', size:'none'}]) // default\n```\n * `encoding` default encoding for writing strings\n * `blocking` if true and the source is a child_process the stream will block the entire process (timeouts wont work anymore, but splitting and listening on data still works, because they work sync)\n * `size` defines buffer level or sets buffer to given size (see ↓`setSize` for more)\n * `disabled` immediately call disable\n * `split` short form for:\n\n```javascript\nstream.split(token, function (chunk) {stream.emit('data', chunk)})\n```\n\n### stream.setSize\n\n```javascript\nstream.setSize(size) // can be one of ['none', 'flexible', <number>]\n```\n\ndifferent buffer behaviors can be triggered by size:\n\n * `none` when output drains, bufferstream drains too\n * `flexible` buffers everthing that it gets and not piping out\n * `<number>` `TODO` buffer has given size. buffers everthing until buffer is full. when buffer is full then  the stream will drain\n\n### stream.enable\n\n```javascript\nstream.enable()\n```\n\nenables stream buffering __default__\n\n### stream.disable\n\n```javascript\nstream.disable()\n```\n\nflushes buffer and disables stream buffering.\nBufferStream now pipes all data as long as the output accepting data.\nwhen the output is draining BufferStream will buffer all input temporary.\n\n```javascript\nstream.disable(token, ...)\nstream.disable(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\ndisables given tokens. wont flush until no splitter tokens are left.\n\n### stream.split\n\n```javascript\nstream.split(token, ...)\nstream.split(tokens) // Array\n```\n * `token[s]` buffer splitters (should be String or Buffer)\n\neach time BufferStream finds a splitter token in the input data it will emit a __split__ event.\nthis also works for binary data.\n\n### Event: 'split'\n\n```javascript\nstream.on('split', function (chunk, token) {…})\nstream.split(token, function (chunk, token) {…}) // only get called for this particular token\n```\n\nwhenever the stream is enabled it will try to find all splitter token in `stream.buffer`,\ncut it off and emit the chunk (without token) as __split__ event.\nthis data will be lost when not handled.\n\nthe chunk is the cut off of `stream.buffer` without the token.\n\n__Warning:__ try to avoid calling `stream.emit('data', newchunk)` more than one time, because this will likely throw `Error: Offset is out of bounds`.\n\n### stream.getBuffer\n\n```javascript\nstream.getBuffer()\n// or just\nstream.buffer\n```\n\nreturns its [Buffer](http://nodejs.org/docs/v0.4.7/api/buffers.html).\n\n### stream.toString\n\n```javascript\nstream.toString()\n```\n\nshortcut for `stream.buffer.toString()`\n\n### stream.length\n\n```javascript\nstream.length\n```\n\nshortcut for `stream.buffer.length`\n\n### PostBuffer\n\n```javascript\nPostBuffer = require('bufferstream/postbuffer')\npost = new PostBuffer(req)\n```\n * `req` http.ServerRequest\n\nfor if you want to get all the post data from a http server request and do some db reqeust before.\n\nbuffer http client\n\n### post.onEnd\n\n```javascript\npost.onEnd(function (data) {…});\n```\n\nset a callback to get all post data from a http server request\n\n### post.pipe\n\n```javascript\npost.pipe(stream, options);\n```\n\npumps data into another stream to allow incoming streams\ngiven options will be passed to Stream.pipe\n\n## note\n\nTo improve platform independence bufferstream is using `bufferjs` instead of `buffertools` since version `0.6.0`.\nJust run `npm install buffertools` to use their implementation of `Buffer.indexOf` which is sligthly faster than `bufferjs`'s version.\nif you're forced to use the javascript-only version of `Buffer.indexOf` (like on windows) you can disable the warning by:\n```javascript\nrequire('bufferstream').fn.warn = false\n```\n\n## example\n\n```javascript\nBufferStream = require('bufferstream')\nstream = new BufferStream({encoding:'utf8', size:'flexible'})\nstream.split('//', ':')\nstream.on('split', function (chunk, token) {\n    console.log(\"got '%s' by '%s'\", chunk.toString(), token.toString())\n})\nstream.write(\"buffer:stream//23\")\nconsole.log(stream.toString())\n```\n\nresults in\n\n    got 'buffer' by ':'\n    got 'stream' by '//'\n    23\n\n* https://github.com/dodo/node-bufferstream/blob/master/example/split.js\n\n## FAQ\n\n> I'm not sure from your readme what the split event emits?\n\nyou can specify more than one split token .. so it's emitted whenever\na token is found.\n\n> does it emit the buffer up to the just before the token starts?\n\nyes.\n\n> also, does it join buffers together if they do not already end in a token?\n\nwhen size is `flexible` it joins everything together what it gets to\none buffer (accessible through `stream.buffer` or\n`stream.getBuffer()`)\nwhenever it gets data, it will try to find all tokens\n\n> in other words, can I use this to rechunk a stream so that the chunks always break on newlines, for example?\n\nyes.\n\n```javascript\nstream = new BufferStream({size:'flexible'});\nstream.split('\\n', function (line) { // line doesn't have a '\\n' anymore\n    stream.emit('data', line); // Buffer.isBuffer(line) === true\n});\n```\n\n[![Build Status](https://secure.travis-ci.org/dodo/node-bufferstream.png)](http://travis-ci.org/dodo/node-bufferstream)\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/dodo/node-bufferstream/issues"},"_id":"bufferstream@0.6.2","dist":{"shasum":"a5f27e10d3c760084d14b35126615007319e3731","tarball":"https://registry.npmjs.org/bufferstream/-/bufferstream-0.6.2.tgz","integrity":"sha512-isI8n1h1VGBzaLF2frXS50RIWaCSBEVo/U5C3SZFJgbl3AL1CVWHHrRpFt93VTViT6X5nJ9KjRY0neF+afhggg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCHweia5MCMSXlA/zQ5oN44QvhEl+ljgLAPi7hnVjqxy0CIHG6BRLQaukWT6jMcIUC4nXiVAbxl2RtaogEGHIXsjaN"}]},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"dodo","email":"dodo@blacksec.org"},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}]}},"maintainers":[{"name":"dodo","email":"dodo@blacksec.org"}],"time":{"modified":"2022-06-13T05:15:43.501Z","created":"2011-05-17T22:29:35.931Z","0.0.2":"2011-05-17T22:29:36.655Z","0.0.3":"2011-05-22T13:23:15.867Z","0.1.0":"2011-05-24T21:38:16.722Z","0.1.1":"2011-05-24T21:42:47.100Z","0.1.2":"2011-05-25T22:04:48.940Z","0.1.2-1":"2011-05-29T17:18:08.954Z","0.1.2-2":"2011-05-29T19:01:48.355Z","0.1.2-3":"2011-05-29T19:30:38.040Z","0.1.2-4":"2011-05-29T20:34:19.421Z","0.1.2-5":"2011-05-29T21:01:14.782Z","0.1.2-6":"2011-05-29T21:16:35.704Z","0.1.3":"2011-05-30T06:09:28.785Z","0.1.4":"2011-06-04T20:45:22.537Z","0.1.5":"2011-06-06T19:24:32.836Z","0.1.6":"2011-06-06T19:49:07.856Z","0.2.0":"2011-06-08T12:22:34.032Z","0.3.0":"2011-06-09T00:34:16.587Z","0.4.0":"2011-08-22T01:19:35.723Z","0.4.1":"2011-08-22T01:38:09.188Z","0.4.2":"2011-08-22T01:44:38.102Z","0.4.3":"2011-08-22T02:33:07.612Z","0.4.4":"2011-08-22T12:34:23.546Z","0.4.5":"2011-08-22T16:13:00.064Z","0.4.6":"2011-08-22T21:16:13.826Z","0.4.7":"2011-09-21T01:47:30.628Z","0.4.8":"2011-10-22T03:36:09.749Z","0.4.9":"2011-11-02T18:48:24.428Z","0.4.10":"2011-11-29T14:05:01.474Z","0.5.0-pre":"2012-01-13T11:32:06.110Z","0.5.0-pre2":"2012-02-03T18:00:40.813Z","0.5.0":"2012-02-25T15:55:50.148Z","0.5.1":"2012-03-18T15:47:12.703Z","0.5.2":"2013-06-22T02:26:34.405Z","0.6.0":"2013-08-06T00:44:17.308Z","0.6.1":"2013-11-09T03:10:55.501Z","0.6.2":"2013-11-19T01:11:42.853Z"},"author":{"name":"dodo","url":"https://github.com/dodo"},"repository":{"type":"git","url":"git://github.com/dodo/node-bufferstream.git"},"users":{"coalesce":true}}