Skip to content

Commit

Permalink
lib: runtime deprecate access to process.binding('async_wrap')
Browse files Browse the repository at this point in the history
Signed-off-by: James M Snell <[email protected]>

PR-URL: #37576
Fixes: #37575
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Juan José Arboleda <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
  • Loading branch information
jasnell committed Mar 8, 2021
1 parent a8b5cdc commit 1468c9f
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions lib/internal/bootstrap/loaders.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,10 @@ const internalBindingAllowlist = new SafeSet([
'zlib',
]);

const runtimeDeprecatedList = new SafeSet([
'async_wrap',
]);

// Set up process.binding() and process._linkedBinding().
{
const bindingObj = ObjectCreate(null);
Expand All @@ -114,6 +118,13 @@ const internalBindingAllowlist = new SafeSet([
// Deprecated specific process.binding() modules, but not all, allow
// selective fallback to internalBinding for the deprecated ones.
if (internalBindingAllowlist.has(module)) {
if (runtimeDeprecatedList.has(module)) {
runtimeDeprecatedList.delete(module);
process.emitWarning(
`Access to process.binding('${module}') is deprecated.`,
'DeprecationWarning',
'DEP0111');
}
return internalBinding(module);
}
// eslint-disable-next-line no-restricted-syntax
Expand Down

0 comments on commit 1468c9f

Please sign in to comment.