Skip to content

Commit 7e4b0a4

Browse files
committed
util: make util binding internal
Refs: #22160 PR-URL: #22675 Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
1 parent 04195ad commit 7e4b0a4

18 files changed

+37
-23
lines changed

benchmark/util/type-check.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@ function main({ type, argument, version, n }) {
3838
// For testing, if supplied with an empty type, default to ArrayBufferView.
3939
type = type || 'ArrayBufferView';
4040

41-
const util = process.binding('util');
41+
const { internalBinding } = require('internal/test/binding');
42+
const util = internalBinding('util');
4243
const types = require('internal/util/types');
4344

4445
const func = { native: util, js: types }[version][`is${type}`];

lib/console.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ const {
2929
ERR_INVALID_ARG_VALUE,
3030
},
3131
} = require('internal/errors');
32-
const { previewEntries } = process.binding('util');
32+
const { internalBinding } = require('internal/bootstrap/loaders');
33+
const { previewEntries } = internalBinding('util');
3334
const { Buffer: { isBuffer } } = require('buffer');
3435
const util = require('util');
3536
const {

lib/internal/bootstrap/node.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@
176176
// TODO(addaleax): Turn into a full runtime deprecation.
177177
const { pendingDeprecation } = process.binding('config');
178178
const { deprecate } = NativeModule.require('internal/util');
179-
const utilBinding = process.binding('util');
179+
const utilBinding = internalBinding('util');
180180
const types = internalBinding('types');
181181
for (const name of [
182182
'isArrayBuffer', 'isArrayBufferView', 'isAsyncFunction',
@@ -374,6 +374,7 @@
374374
'contextify',
375375
'tcp_wrap',
376376
'tls_wrap',
377+
'util',
377378
'async_wrap']);
378379
process.binding = function binding(name) {
379380
return internalBindingWhitelist.has(name) ?

lib/internal/modules/cjs/loader.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
'use strict';
2323

24-
const { NativeModule } = require('internal/bootstrap/loaders');
24+
const { internalBinding, NativeModule } = require('internal/bootstrap/loaders');
2525
const util = require('util');
2626
const vm = require('vm');
2727
const assert = require('assert').ok;
@@ -32,7 +32,7 @@ const {
3232
internalModuleReadJSON,
3333
internalModuleStat
3434
} = process.binding('fs');
35-
const { safeGetenv } = process.binding('util');
35+
const { safeGetenv } = internalBinding('util');
3636
const {
3737
makeRequireFunction,
3838
requireDepth,

lib/internal/process/promises.js

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

3-
const { safeToString } = process.binding('util');
3+
const { internalBinding } = require('internal/bootstrap/loaders');
4+
const { safeToString } = internalBinding('util');
45

56
const maybeUnhandledPromises = new WeakMap();
67
const pendingUnhandledRejections = [];

lib/internal/util.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,14 @@ const {
66
ERR_UNKNOWN_SIGNAL
77
} = require('internal/errors').codes;
88
const { signals } = process.binding('constants').os;
9-
9+
const { internalBinding } = require('internal/bootstrap/loaders');
1010
const {
1111
getHiddenValue,
1212
setHiddenValue,
1313
arrow_message_private_symbol: kArrowMessagePrivateSymbolIndex,
1414
decorated_private_symbol: kDecoratedPrivateSymbolIndex
15-
} = process.binding('util');
15+
} = internalBinding('util');
1616

17-
const { internalBinding } = require('internal/bootstrap/loaders');
1817
const { errmap } = internalBinding('uv');
1918

2019
const noCrypto = !process.versions.openssl;

lib/internal/util/comparisons.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ const {
1515
propertyFilter: {
1616
ONLY_ENUMERABLE
1717
}
18-
} = process.binding('util');
18+
} = internalBinding('util');
1919

2020
const ReflectApply = Reflect.apply;
2121

lib/os.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121

2222
'use strict';
2323

24-
const { pushValToArrayMax, safeGetenv } = process.binding('util');
24+
const { internalBinding } = require('internal/bootstrap/loaders');
25+
const { pushValToArrayMax, safeGetenv } = internalBinding('util');
2526
const constants = process.binding('constants').os;
2627
const { deprecate } = require('internal/util');
2728
const isWindows = process.platform === 'win32';

lib/repl.js

+3-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,8 @@ const {
5353
} = require('internal/deps/acorn/dist/acorn');
5454
const internalUtil = require('internal/util');
5555
const util = require('util');
56-
const utilBinding = process.binding('util');
56+
const { internalBinding } = require('internal/bootstrap/loaders');
57+
const utilBinding = internalBinding('util');
5758
const { inherits } = util;
5859
const Stream = require('stream');
5960
const vm = require('vm');
@@ -79,7 +80,7 @@ const {
7980
ALL_PROPERTIES,
8081
SKIP_SYMBOLS
8182
}
82-
} = process.binding('util');
83+
} = internalBinding('util');
8384

8485
// Lazy-loaded.
8586
let processTopLevelAwait;

lib/stream.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ try {
4949
} else {
5050
// This throws for Node < 4.2.0 because there's no util binding and
5151
// returns undefined for Node < 7.4.0.
52-
Stream._isUint8Array = process.binding('util').isUint8Array;
52+
const { internalBinding } = require('internal/bootstrap/loaders');
53+
Stream._isUint8Array = internalBinding('util').isUint8Array;
5354
}
5455
} catch (e) {
5556
}

lib/util.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@ const { validateNumber } = require('internal/validators');
3131
const { TextDecoder, TextEncoder } = require('internal/encoding');
3232
const { isBuffer } = require('buffer').Buffer;
3333

34+
const { internalBinding } = require('internal/bootstrap/loaders');
3435
const {
3536
getPromiseDetails,
3637
getProxyDetails,
3738
kPending,
3839
kRejected,
3940
previewEntries
40-
} = process.binding('util');
41+
} = internalBinding('util');
4142

42-
const { internalBinding } = require('internal/bootstrap/loaders');
4343
const types = internalBinding('types');
4444
Object.assign(types, require('internal/util/types'));
4545
const {

src/node_util.cc

+1-1
Original file line numberDiff line numberDiff line change
@@ -234,4 +234,4 @@ void Initialize(Local<Object> target,
234234
} // namespace util
235235
} // namespace node
236236

237-
NODE_BUILTIN_MODULE_CONTEXT_AWARE(util, node::util::Initialize)
237+
NODE_MODULE_CONTEXT_AWARE_INTERNAL(util, node::util::Initialize)

test/parallel/test-internal-module-wrap.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ const assert = require('assert');
77

88
const { internalBinding } = require('internal/test/binding');
99
const { ModuleWrap } = internalBinding('module_wrap');
10-
const { getPromiseDetails, isPromise } = process.binding('util');
10+
const { getPromiseDetails, isPromise } = internalBinding('util');
1111
const setTimeoutAsync = require('util').promisify(setTimeout);
1212

1313
const foo = new ModuleWrap('export * from "bar"; 6;', 'foo');

test/parallel/test-internal-util-decorate-error-stack.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ require('../common');
44
const fixtures = require('../common/fixtures');
55
const assert = require('assert');
66
const internalUtil = require('internal/util');
7-
const binding = process.binding('util');
7+
const { internalBinding } = require('internal/test/binding');
8+
const binding = internalBinding('util');
89
const spawnSync = require('child_process').spawnSync;
910

1011
const kArrowMessagePrivateSymbolIndex = binding.arrow_message_private_symbol;

test/parallel/test-util-inspect-proxy.js

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

34
require('../common');
45
const assert = require('assert');
56
const util = require('util');
6-
const processUtil = process.binding('util');
7+
const { internalBinding } = require('internal/test/binding');
8+
const processUtil = internalBinding('util');
79
const opts = { showProxy: true };
810

911
const target = {};

test/parallel/test-util-inspect.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// Flags: --expose-internals
12
// Copyright Joyent, Inc. and other Node contributors.
23
//
34
// Permission is hereby granted, free of charge, to any person obtaining a
@@ -22,10 +23,11 @@
2223
'use strict';
2324
const common = require('../common');
2425
const assert = require('assert');
26+
const { internalBinding } = require('internal/test/binding');
2527
const JSStream = process.binding('js_stream').JSStream;
2628
const util = require('util');
2729
const vm = require('vm');
28-
const { previewEntries } = process.binding('util');
30+
const { previewEntries } = internalBinding('util');
2931
const { inspect } = util;
3032

3133
assert.strictEqual(util.inspect(1), '1');

test/parallel/test-util-internal.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@
44
require('../common');
55
const assert = require('assert');
66
const fixtures = require('../common/fixtures');
7+
const { internalBinding } = require('internal/test/binding');
78

89
const {
910
getHiddenValue,
1011
setHiddenValue,
1112
arrow_message_private_symbol: kArrowMessagePrivateSymbolIndex,
1213
safeGetenv
13-
} = process.binding('util');
14+
} = internalBinding('util');
1415

1516
for (const oneEnv in process.env) {
1617
assert.strictEqual(

test/parallel/test-util-sigint-watchdog.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// Flags: --expose-internals
12
'use strict';
23
const common = require('../common');
34
if (common.isWindows) {
@@ -6,7 +7,8 @@ if (common.isWindows) {
67
}
78

89
const assert = require('assert');
9-
const binding = process.binding('util');
10+
const { internalBinding } = require('internal/test/binding');
11+
const binding = internalBinding('util');
1012

1113
[(next) => {
1214
// Test with no signal observed.

0 commit comments

Comments
 (0)