Socket
Socket
Sign inDemoInstall

execa

Package Overview
Dependencies
Maintainers
1
Versions
57
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

execa - npm Package Compare versions

Comparing version 0.9.0 to 0.10.0

21

index.js

@@ -36,3 +36,6 @@ 'use strict';

file: cmd,
original: cmd
original: {
cmd,
args
}
};

@@ -217,3 +220,3 @@ } else {

const cleanupTimeout = () => {
const cleanup = () => {
if (timeoutId) {

@@ -223,2 +226,6 @@ clearTimeout(timeoutId);

}
if (removeExitHandler) {
removeExitHandler();
}
};

@@ -236,3 +243,3 @@

spawned.on('exit', (code, signal) => {
cleanupTimeout();
cleanup();
resolve({code, signal});

@@ -242,3 +249,3 @@ });

spawned.on('error', err => {
cleanupTimeout();
cleanup();
resolve({error: err});

@@ -249,3 +256,3 @@ });

spawned.stdin.on('error', err => {
cleanupTimeout();
cleanup();
resolve({error: err});

@@ -275,6 +282,2 @@ });

if (removeExitHandler) {
removeExitHandler();
}
if (result.error || result.code !== 0 || result.signal !== null) {

@@ -281,0 +284,0 @@ const err = makeError(result, {

'use strict';
// The Node team wants to deprecate `process.bind(...)`.
// https://github.com/nodejs/node/pull/2768
//
// However, we need the 'uv' binding for errname support.
// This is a defensive wrapper around it so `execa` will not fail entirely if it stops working someday.
//
// If this ever stops working. See: https://github.com/sindresorhus/execa/issues/31#issuecomment-215939939 for another possible solution.
// Older verions of Node might not have `util.getSystemErrorName()`.
// In that case, fall back to a deprecated internal.
const util = require('util');
let uv;
try {
uv = process.binding('uv');
if (typeof util.getSystemErrorName === 'function') {
module.exports = util.getSystemErrorName;
} else {
try {
uv = process.binding('uv');
if (typeof uv.errname !== 'function') {
throw new TypeError('uv.errname is not a function');
if (typeof uv.errname !== 'function') {
throw new TypeError('uv.errname is not a function');
}
} catch (err) {
console.error('execa/lib/errname: unable to establish process.binding(\'uv\')', err);
uv = null;
}
} catch (err) {
console.error('execa/lib/errname: unable to establish process.binding(\'uv\')', err);
uv = null;
module.exports = code => errname(uv, code);
}
// Used for testing the fallback behavior
module.exports.__test__ = errname;
function errname(uv, code) {

@@ -34,5 +40,1 @@ if (uv) {

module.exports = code => errname(uv, code);
// Used for testing the fallback behavior
module.exports.__test__ = errname;
{
"name": "execa",
"version": "0.9.0",
"version": "0.10.0",
"description": "A better `child_process`",

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

"dependencies": {
"cross-spawn": "^5.0.1",
"cross-spawn": "^6.0.0",
"get-stream": "^3.0.0",

@@ -50,0 +50,0 @@ "is-stream": "^1.1.0",

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