Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
gulp-streamify
Advanced tools
Wrap old Gulp plugins to support streams.
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.
First, install gulp-streamify
as a development dependency:
npm install --save-dev gulp-streamify
Then, add it to your gulpfile.js
and wrap all that shit:
var streamify = require('gulp-streamify');
var noStreamPlugin = require('gulp-no-stream');
gulp.task('stream', function(){
gulp.src(['**/*'])
.pipe( streamify( noStreamPlugin() ) )
.pipe(gulp.dest('/tmp'));
});
If you have several plugins to wrap together, prefer calling gulp-streamify
once thanks to the function form of the gulp-streamify
constructor:
var gStreamify = require('gulp-streamify');
var noStreamPlugin = require('gulp-no-stream');
var noStreamPlugin2 = require('gulp-no-stream2');
var plexer = require('plexer');
gulp.task('stream', function(){
gulp.src(['**/*'])
.pipe(streamify(function() {
var instream = noStreamPlugin();
var outstream = noStreamPlugin2();
instream
.pipe(anyOtherStream)
.pipe(outStream);
return plexer(instream, outstream);
}))
.pipe(gulp.dest('/tmp'));
});
Take a stream or a function returning a stream to wrap an return a stream mode compatible stream.
You may want to contribute to this project, pull requests are welcome if you accept to publish under the MIT licence.
FAQs
Wrap old plugins to support streams.
The npm package gulp-streamify receives a total of 11,734 weekly downloads. As such, gulp-streamify popularity was classified as popular.
We found that gulp-streamify demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.