Socket
Socket
Sign inDemoInstall

imagemin-webp

Package Overview
Dependencies
Maintainers
3
Versions
20
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

imagemin-webp - npm Package Compare versions

Comparing version 3.1.0 to 3.1.1

58

index.js
'use strict';
var ExecBuffer = require('exec-buffer');
var spawn = require('child_process').spawn;
var isCwebpReadable = require('is-cwebp-readable');
var replaceExt = require('replace-ext');
var through = require('through2');
var webp = require('cwebp-bin');
var cwebp = require('cwebp-bin');

@@ -28,4 +28,6 @@ module.exports = function (opts) {

var execBuffer = new ExecBuffer();
var args = ['-quiet', '-mt'];
var err = '';
var ret = [];
var len = 0;

@@ -72,16 +74,42 @@ if (opts.preset) {

execBuffer
.use(webp, args.concat([execBuffer.src(), '-o', execBuffer.dest()]))
.run(file.contents, function (err, buf) {
if (err) {
err.fileName = file.path;
cb(err);
return;
}
var cp = spawn(cwebp, args.concat(['-o', '-', '--', '-']));
file.path = replaceExt(file.path, '.webp');
file.contents = buf;
cb(null, file);
});
cp.stderr.setEncoding('utf8');
cp.stderr.on('data', function (data) {
err += data;
});
cp.stdout.on('data', function (data) {
ret.push(data);
len += data.length;
});
cp.on('error', function (err) {
err.fileName = file.path;
cb(err);
return;
});
cp.on('close', function (code) {
if (code) {
err = new Error(err);
err.fileName = file.path;
cb(err);
return;
}
file.contents = Buffer.concat(ret, len);
file.path = replaceExt(file.path, '.webp');
cb(null, file);
});
cp.stdin.on('error', function (stdinErr) {
if (!err) {
err = stdinErr;
}
});
cp.stdin.end(file.contents);
});
};
{
"name": "imagemin-webp",
"version": "3.1.0",
"version": "3.1.1",
"description": "webp imagemin plugin",

@@ -16,3 +16,3 @@ "license": "MIT",

"scripts": {
"test": "node test/test.js"
"test": "xo && node test/test.js"
},

@@ -37,6 +37,5 @@ "files": [

"dependencies": {
"cwebp-bin": "^3.0.0",
"exec-buffer": "^2.0.0",
"cwebp-bin": "^3.1.0",
"is-cwebp-readable": "^1.0.0",
"replace-ext": "0.0.1",
"replace-ext": "^0.0.1",
"through2": "^2.0.0"

@@ -49,4 +48,5 @@ },

"vinyl": "^0.5.0",
"vinyl-file": "^1.1.0"
"vinyl-file": "^1.1.0",
"xo": "*"
}
}

@@ -1,2 +0,2 @@

# imagemin-webp [![Build Status](http://img.shields.io/travis/imagemin/imagemin-webp.svg?style=flat)](https://travis-ci.org/imagemin/imagemin-webp) [![Build status](https://ci.appveyor.com/api/projects/status/erd3nf73djfm4gjp?svg=true)](https://ci.appveyor.com/project/ShinnosukeWatanabe/imagemin-webp)
# imagemin-webp [![Build Status](https://travis-ci.org/imagemin/imagemin-webp.svg?branch=master)](https://travis-ci.org/imagemin/imagemin-webp) [![Build status](https://ci.appveyor.com/api/projects/status/erd3nf73djfm4gjp?svg=true)](https://ci.appveyor.com/project/ShinnosukeWatanabe/imagemin-webp)

@@ -3,0 +3,0 @@ > webp imagemin plugin

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc