tar-vinyl-stream

1.2.1 • Public • Published

tar-vinyl-stream

tar-vinyl-stream exposes two streams, pack and extract.

Pack

The pack stream consumes a stream of vinyl objects and generates a tar file stream.

import {pack} from 'tar-vinyl-stream';
import * as fs from 'fs';
import gulp from 'gulp';
import debug from 'gulp-debug';

gulp.src('./src/*.js')
	.pipe(debug())
	.pipe(pack())
	.pipe(fs.createWriteStream('./my-files.tar'));

Extract

The extract stream consumes a tar stream and emits vinyl objects for each containing file.

import {extract} from 'tar-vinyl-stream';
import * as fs from 'fs';
import gulp from 'gulp';
import debug from 'gulp-debug';

fs.createReadStream('./my-files.tar')
	.pipe(extract())
	.pipe(debug())
	.pipe(...) // use gulp plugins
	.pipe(gulp.dest('./my-tar'));

extract also exposes the tar header. You can use it for any purpose, eg filtering the files:

import {extract} from 'tar-vinyl-stream';
import * as fs from 'fs';
import gulp from 'gulp';
import debug from 'gulp-debug';
import filter from 'through2-filter';

fs.createReadStream('./my-files.tar')
	.pipe(extract())
	.pipe(debug())
	// allow only files
	.pipe(filter.obj(f => f.tarHeader.type === 'file'))
	.pipe(debug())
	.pipe(gulp.dest('./dest'));

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.2.1
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.2.1
    0
  • 1.2.0
    0
  • 1.1.1
    0
  • 1.1.0
    0

Package Sidebar

Install

npm i tar-vinyl-stream

Weekly Downloads

0

Version

1.2.1

License

MIT

Last publish

Collaborators

  • chpio