@commaai/unbzip2-stream

2.0.0 • Public • Published

npm version

unbzip2-stream

streaming bzip2 decompressor in pure JS for Node and browserify.

This is resin-io-modules's fork of the original unbzip2-stream which added in normal streams. This solved a lot of issues with flushing.

Buffers

When browserified, the stream emits instances of feross/buffer instead of raw Uint8Arrays to have a consistant API across browsers and Node.

Usage

var bz2 = require('unbzip2-stream');
var fs = require('fs');

// decompress test.bz2 and output the result
fs.createReadStream('./test.bz2').pipe(bz2()).pipe(process.stdout);

Also see test/browser/download.js for an example of decompressing a file while downloading.

Tests

To run tests in Node:

npm run test

To run tests in PhantomJS

npm run browser-test

Additional Tests

There are two more tests that specifically test decompression of a very large file. Because I don't want to include large binary files in this repository, the files are created by running an npm script.

npm run prepare-long-test

You can now

npm run long-test

And to run a test in chrome that downloads and decompresses a large binary file

npm run download-test

Open the browser's console to see the output.

Package Sidebar

Install

npm i @commaai/unbzip2-stream

Weekly Downloads

5

Version

2.0.0

License

MIT

Unpacked Size

18.9 kB

Total Files

6

Last publish

Collaborators

  • commabot