diff options
Diffstat (limited to 'node_modules/execa/lib/errname.js')
-rw-r--r-- | node_modules/execa/lib/errname.js | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/node_modules/execa/lib/errname.js b/node_modules/execa/lib/errname.js deleted file mode 100644 index 328f3e3..0000000 --- a/node_modules/execa/lib/errname.js +++ /dev/null @@ -1,37 +0,0 @@ -'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. -let uv; - -try { - uv = process.binding('uv'); - - 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; -} - -function errname(uv, code) { - if (uv) { - return uv.errname(code); - } - - if (!(code < 0)) { - throw new Error('err >= 0'); - } - - return `Unknown system error ${code}`; -} - -module.exports = code => errname(uv, code); - -// Used for testing the fallback behavior -module.exports.__test__ = errname; |