Wrap old plugins to support streams.
JavaScript Shell
Switch branches/tags
Nothing to show
Pull request Compare This branch is 2 commits ahead, 12 commits behind nfroidure:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
tests
.gitignore
.npmignore
.travis.yml
LICENSE
README.md
package.json

README.md

gulp-streamify-old

Wrap old Gulp plugins to support streams.

This is a fork of the original gulp-streamify plugin, made to be compatible with node 0.8.x

It is pretty annoying when Gulp plugins doesn't support streams. This plugin allows you to wrap them in order to use the stream mode anyway. It is pretty useful when you want to take advantage of streams on part of your pipelines.

Note to gulp plugin developpers: This plugin should not discourage you to support streams in your own plugins. I made this plug-in to avoid beeing stucked with a bad plugin. If your underlying library support streams, please, use it! Even if it doesn't, use BufferStreams in your plugins to support streams at the plugin level (it won't block files to buffer their contents like this library has to do to work). Here is a sample of bufferstreams usage in Gulp plugins.

Usage

First, install gulp-streamify-old as a development dependency:

npm install --save-dev gulp-streamify-old

Then, add it to your gulpfile.js and wrap all that shit:

var gStreamify = require('gulp-streamify-old')
  , noStreamPlugin = require('gulp-no-stream')
;

gulp.task('stream', function(){
  gulp.src(['**/*'])
    .pipe( gStreamify( noStreamPlugin() ) )
    .pipe(gulp.dest('/tmp'));
});

If you have several plugins to wrap together, prefer calling gulp-streamify-old once:

var gStreamify = require('gulp-streamify-old')
  , noStreamPlugin = require('gulp-no-stream')
  , noStreamPlugin2 = require('gulp-no-stream2')
;

gulp.task('stream', function(){
  gulp.src(['**/*'])
    .pipe(gStreamify(
      noStreamPlugin().pipe(noStreamPlugin2())
    ))
    .pipe(gulp.dest('/tmp'));
});

Contributing / Issues

You may want to contribute to this project, pull requests are welcome if you accept to publish under the MIT licence.