Skip to content

Commit da8641f

Browse files
committed
src: move process.binding('async_wrap') internal
This commit makes the async_wrap builtin an internal builtin, and changes usage of the builtin from using process.binding('async_wrap') to use internalBinding instead. Refs: #22160 PR-URL: #22469 Refs: #22160 Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
1 parent 49bfc37 commit da8641f

12 files changed

+24
-15
lines changed

lib/internal/async_hooks.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ const {
44
ERR_ASYNC_TYPE,
55
ERR_INVALID_ASYNC_ID
66
} = require('internal/errors').codes;
7-
const async_wrap = process.binding('async_wrap');
7+
const { internalBinding } = require('internal/bootstrap/loaders');
8+
const async_wrap = internalBinding('async_wrap');
89
/* async_hook_fields is a Uint32Array wrapping the uint32_t array of
910
* Environment::AsyncHooks::fields_[]. Each index tracks the number of active
1011
* hooks for each type.

lib/internal/bootstrap/node.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,8 @@
356356
'crypto',
357357
'contextify',
358358
'tcp_wrap',
359-
'tls_wrap']);
359+
'tls_wrap',
360+
'async_wrap']);
360361
process.binding = function binding(name) {
361362
return internalBindingWhitelist.has(name) ?
362363
internalBinding(name) :

lib/internal/crypto/pbkdf2.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'use strict';
22

3-
const { AsyncWrap, Providers } = process.binding('async_wrap');
4-
const { Buffer } = require('buffer');
53
const { internalBinding } = require('internal/bootstrap/loaders');
4+
const { AsyncWrap, Providers } = internalBinding('async_wrap');
5+
const { Buffer } = require('buffer');
66
const { INT_MAX, pbkdf2: _pbkdf2 } = internalBinding('crypto');
77
const { validateInt32 } = require('internal/validators');
88
const {

lib/internal/crypto/random.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'use strict';
22

3-
const { AsyncWrap, Providers } = process.binding('async_wrap');
4-
const { Buffer, kMaxLength } = require('buffer');
53
const { internalBinding } = require('internal/bootstrap/loaders');
4+
const { AsyncWrap, Providers } = internalBinding('async_wrap');
5+
const { Buffer, kMaxLength } = require('buffer');
66
const { randomBytes: _randomBytes } = internalBinding('crypto');
77
const {
88
ERR_INVALID_ARG_TYPE,

lib/internal/crypto/scrypt.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
'use strict';
22

3-
const { AsyncWrap, Providers } = process.binding('async_wrap');
4-
const { Buffer } = require('buffer');
53
const { internalBinding } = require('internal/bootstrap/loaders');
4+
const { AsyncWrap, Providers } = internalBinding('async_wrap');
5+
const { Buffer } = require('buffer');
66
const { INT_MAX, scrypt: _scrypt } = internalBinding('crypto');
77
const { validateInt32 } = require('internal/validators');
88
const {

lib/internal/trace_events_async_hooks.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
const { internalBinding } = require('internal/bootstrap/loaders');
44
const { trace } = internalBinding('trace_events');
5-
const async_wrap = process.binding('async_wrap');
5+
const async_wrap = internalBinding('async_wrap');
66
const async_hooks = require('async_hooks');
77
const { SafeMap, SafeSet } = require('internal/safe_globals');
88

src/async_wrap.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -765,4 +765,4 @@ Local<Object> AsyncWrap::GetOwner(Environment* env, Local<Object> obj) {
765765

766766
} // namespace node
767767

768-
NODE_BUILTIN_MODULE_CONTEXT_AWARE(async_wrap, node::AsyncWrap::Initialize)
768+
NODE_MODULE_CONTEXT_AWARE_INTERNAL(async_wrap, node::AsyncWrap::Initialize)

test/common/index.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,8 @@ if (process.env.NODE_TEST_WITH_ASYNC_HOOKS) {
7979
const destroydIdsList = {};
8080
const destroyListList = {};
8181
const initHandles = {};
82-
const async_wrap = process.binding('async_wrap');
82+
const { internalBinding } = require('internal/test/binding');
83+
const async_wrap = internalBinding('async_wrap');
8384

8485
process.on('exit', () => {
8586
// iterate through handles to make sure nothing crashes

test/parallel/test-async-wrap-destroyid.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1+
// Flags: --expose-internals
12
'use strict';
23

34
const common = require('../common');
4-
const async_wrap = process.binding('async_wrap');
5+
const { internalBinding } = require('internal/test/binding');
6+
const async_wrap = internalBinding('async_wrap');
57
const assert = require('assert');
68
const async_hooks = require('async_hooks');
79
const RUNS = 5;

test/pseudo-tty/test-async-wrap-getasyncid-tty.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
1+
// Flags: --expose-internals --no-warnings
12
'use strict';
23

34
// see also test/sequential/test-async-wrap-getasyncid.js
45

56
const common = require('../common');
67
const assert = require('assert');
78
const tty_wrap = process.binding('tty_wrap');
8-
const { TTYWRAP } = process.binding('async_wrap').Providers;
9+
const { internalBinding } = require('internal/test/binding');
10+
const { TTYWRAP } = internalBinding('async_wrap').Providers;
911
const providers = { TTYWRAP };
1012

1113
// Make sure that the TTYWRAP Provider is tested.

test/sequential/test-async-wrap-getasyncid.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ const assert = require('assert');
77
const fs = require('fs');
88
const fsPromises = fs.promises;
99
const net = require('net');
10-
const providers = Object.assign({}, process.binding('async_wrap').Providers);
10+
const providers = Object.assign({}, internalBinding('async_wrap').Providers);
1111
const fixtures = require('../common/fixtures');
1212
const tmpdir = require('../common/tmpdir');
1313
const { getSystemErrorName } = require('util');

test/sequential/test-inspector-async-call-stack.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1+
// Flags: --expose-internals
12
'use strict';
23
const common = require('../common');
34
common.skipIfInspectorDisabled();
45
common.skipIf32Bits();
56

67
const assert = require('assert');
7-
const async_wrap = process.binding('async_wrap');
8+
const { internalBinding } = require('internal/test/binding');
9+
const async_wrap = internalBinding('async_wrap');
810
const { kTotals } = async_wrap.constants;
911
const inspector = require('inspector');
1012

0 commit comments

Comments
 (0)