6.0.0 • Published 4 years ago

unpack-stream v6.0.0

Weekly downloads
5,450
License
MIT
Repository
github
Last release
4 years ago

unpack-stream

Unpack a tarball stream

npm version Build Status

Installation

npm i -S unpack-stream

Usage

'use strict'
const got = require('got')
const unpackStream = require('unpack-stream')

const tarball = 'https://registry.npmjs.org/is-negative/-/is-negative-2.1.0.tgz'
const stream = got.stream(tarball)
unpackStream.remote(stream, './tmp')
  .then(index =>
    Promise.all(
      Object.keys(index)
        .map(filename =>
          index[filename].generatingIntegrity.then(integrity => ({filename, integrity})))
    )
  )
  .then(files => console.log(files))
  //> [ { filename: 'package.json',
  //      integrity: 'sha512-RA0APKvtxz85WYCFX3M/TkVeJZZBcylEwh+GrV7uO/NNJO4G3rzgTrpsypp9AU2hM2QBk9SxCHi1Gb9aaWzpYg==' },
  //    { filename: 'index.js',
  //      integrity: 'sha512-3dL1OHn8VWhVDT37f3ZBdou4NrYq2ll//W1lWqx7+4tKBW/WqUx3mDcGyqrBfBeWTIPCd+RiUdF7hp3MQYB9+g==' },
  //    { filename: 'license',
  //      integrity: 'sha512-lSw93JVg7wfwyVXKrg6yIFjF9Bidgr+tA/l6XNlrRhjnE6NhwkyPL3xNL47OZScS8qoQkYUwE6slmo7jGesH0Q==' },
  //    { filename: 'readme.md',
  //      integrity: 'sha512-fM882axp7XaC6nzj5XYuzB0KhYpYwwsR3RjyiqOcIrI6C0b9KxrEEug9VpKTfbSbqTOmZ2KEqZLPKrMXFW1Y+g==' } ]

API

remote(stream, destination, [opts]): Promise<Index>

Unpacks a remote stream fetched via HTTP.

Arguments:

  • stream - Stream
  • destination - string - the directory to which the stream will be unpacked
  • [opts.shasum] - string - shasum to verify tarball
  • [opts.onStart] - Function - called on download start
  • [opts.onProgress] - (downloaded, size) => void - tracks the download progress
  • [opts.generateIntegrity] - Boolean - true by default. If true, generates Subresource Integrity for each unpacked file
  • [opts.ignore] - (filename: string) => boolean - a function that decides whether a file should be unpacked from the tarball.

local(stream, destination, [opts]): Promise<Index>

Unpacks a stream from the local filesystem.

Arguments:

  • [opts.generateIntegrity] - Boolean - true by default. If true, generates Subresource Integrity for each unpacked file
  • [opts.ignore] - (filename: string) => boolean - a function that decides whether a file should be unpacked from the tarball.

License

MIT © Zoltan Kochan

6.0.2

4 years ago

6.0.1

5 years ago

6.0.0

5 years ago

5.0.1

5 years ago

5.0.0

5 years ago

4.0.2

5 years ago

4.0.1

5 years ago

4.0.0

6 years ago

3.0.3

6 years ago

3.0.2

6 years ago

3.0.1

6 years ago

3.0.0

6 years ago

2.2.0

6 years ago

2.1.1

6 years ago

2.1.0

7 years ago

2.0.0

7 years ago

2.0.0-beta.1

7 years ago

1.2.0

7 years ago

1.1.0

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago

0.1.1

7 years ago

0.1.0

7 years ago

1.0.0

7 years ago